今天遇到了一个小问题,如何通过js将一base64编码的图片显示在html中?写了一个小的demo. 1:将图片转化为base64编码格式。...document.body.appendChild(img); 3:可以看到,已经通过js将一base64编码的图片显示在html中了。...坚持总结工作中遇到的技术问题,坚持记录工作中所所思所见
今天遇到了一个小问题,如何通过js将一base64编码的图片显示在html中?写了一个小的demo. 1:将图片转化为base64编码格式。...document.body.appendChild(img); 3:可以看到,已经通过js将一base64编码的图片显示在html中了。
如何使用 Android Studio 创建 Android 应用程序 在 Studio 中创建 Android 应用程序 启动 Android development studio 在上面的屏幕上,...请记住,这里我们正在创建我们的第一个项目,因此我们将创建一个显示消息“Hello World”和“单击我”按钮的屏幕。 在正文中,tab复制以下代码。...该文件有一个 TextView 和一个按钮,可以通过从左侧面板拖放方法将其带到设计屏幕。 练习: 尝试在示例屏幕中放置各种元素。 按钮的“id”,然后设置了 Click Listener。单击此“单击我”按钮后,我们会看到一个祝酒词(一条显示“按钮已单击!”的短消息)。...之后,您会看到您的第一个应用程序在您的 Android 设备上启动。 以下是启动应用程序的屏幕截图。 当您单击“CLICK ME”按钮时,会出现提示。 总结 很棒!
里面自定义了三个方法分别实现传输三种数据,在第二个方法sendImageData方法中我们使用bundle.putParcelable方法来储存一个Bitmap对象,在上面提过了我们可以用Serializable...第三个方法sendObjectData中的Book类就是实现了serializable接口,之后通过intent的putExtra方法的重载实现的传递,我们来看一下Book.java: package...单击“传送文本数据”按钮: ? 成功的显示,单击返回后再单击“传送图片数据”按钮: ? good,图片成功的显示,再单击返回后单击“传送自定义数据”按钮: ?...答案当然是有的,我们可以尝试一下 在MainActivity.java新建一个按钮用于实验传输大数据,并且在MainActivity.java中新建一个方法sendBigData: private...单击“传送大数据”按钮,并不会启动SecondActivity,我们打开LogCat: ? !!!
ViewSwitcher组件和两个按钮,这两个按钮分别用于控制该ViewSwitcher显示上一屏、下一屏的程序列表。...nameTv; } } 使用扩展BaseAdapter的方式为GridView提供Adapter,关键就是根据用户单击的按钮来动态计算该BaseAdapter应该显示哪些程序列表。...,显示下一屏 // 学习手势检测后,也可通过手势检测实现显示下一屏 mViewSwitcher.showNext(); } }...} } } 重点在于为ViewSwitcher设置ViewFactory对象,并且当用户单击“”两个按钮时控制ViewSwitcher显示“上一屏”和“下一屏”的应用程序。...当用户单击按钮时,程序的事件处理方法将会控制ViewSwitcher调用showNext() 方法显示下一屏的程序列表。
Button(按钮)是Android开发中使用非常频繁的组件,主要是在UI界面上生成一个按钮,该按钮可以供用户单击,当用户单击按钮时,按钮会触发一个onClick点击事件。...; 第二个按钮通过background属性配置了背景图片,因此该按钮将会显示为背景图片形状的按钮; 第三个按钮综合了文字显示和背景图片,因此该按钮将会显示为背景图片上带文字的按钮。...通过上面的示例,大体知道如何创建Button,那么接下来通过一个综合示例来继续学习如何使用Button和EditText这两个组件。...为了监听登录按钮的点击事件,在Java代码中为其添加点击事件监听器,具体代码如下: public class MainActivity extends AppCompatActivity { private...运行程序,分别在用户名输入框和密码输入框中输入相应信息,再点击登录按钮,可以看到下图所示界面效果。 ?
这样看似不是按钮的组件也可以使用这些监听。...内部类作为事件监听器: 在MainActivity中定义内部类,在内部类中覆盖接口,然后在setOnClickListener参数表中创建这个类。...直接绑定到标签: 这是单击事件独有的方法,在xml中为组件绑定事件处理方法 android:onClick=“clickName” 然后直接在类中声明方法:public void clickName(...实例 我们在最上方设置一个TextView,用于显示我们的操作。 练习一下TableLayout,设置4个按键,分别用Button和TextView,用多种方法加上监听器。...对最上面的TextView加上触摸监听器,并显示坐标。 xml代码: <?xml version="1.0" encoding="utf-8"?
Book表中的所有数据"/> 一段布局代码,主要是5个按钮对应5中对数据库的操作:创建数据库、插入数据、更新数据、删除数据、显示(查询)数据。...接下来单击“插入数据”按钮: 之后 在控制台中输入 “select * from book;”,这个是查询数据库文件中的数据的SQL语句,不熟悉的小伙伴可以在网上查到一些教程 ?...我们可以看到我们确实在book这张表中成功的插入了一条新的数据。 接下来单击“更新数据”按钮: ?...Ok,确实把书名为“C Language”的书的作者改为了 “xiaowei”,继续单击“删除”按钮: ?...使用 “select * from”语句查询表中的所有数据,并没有看到有数据,我们再单击一下“显示数据库中book表中的所有数据”按钮: ?
Android中的通知(Notification)是Android中的重要一部分,应用程序通过通知来提醒用户或者向用户传达信息,下面让我们来看一下怎么在我们的程序中使用通知和自定义通知的布局。...言归正传,这个广播干什么用的呢:在自定义通知布局中我们要对两个按钮进行事件处理,在自定义通知布局中,我们必须使用RemoteViews的对象来对布局文件中的两个按钮进行事件处理,而 RemoteViews...、Service(它们都是通过Intent启动或者和Intent有关联)来响应按钮的单击事件。...单击“发送第一种通知”按钮: ? 单击这个通知: ? 接下来单击“发送第二种通知”按钮: ? 这里图片是随便找的,不太美观,大家多多谅解。...分别单击通知中的两个按钮: ? ? Nice,我们成功的自定义了属于我们自己的通知 如果博客中有什么不正确的地方,还请多多指点 谢谢观看。。。
通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体,将其所依赖的对象的引用传递给它。...也可以说,依赖被注入到对象中 注入布局 首先是注入布局,这也是注入中相对简单的注入 在没有使用注入的时候,会使用setContentView(R.layout.activity_main);去加载布局...(this); textView.setText("IOC View Inject"); } } 此处必须要有一个id,在注入完成以后,界面正常显示,并且TextView的显示文字变为...break; case R.id.onclick_button_two: Toast.makeText(this, "单击按钮...android:layout_width="match_parent" android:layout_height="wrap_content" android:text="单击按钮
二、示例 接下来通过一个示例来学习两个Activity之间如何通过Bundle交换数据。...定义了一个相对布局RelativeLayout,该布局中创建了一个EditText和一个Button按钮,分别用于输入内容和单击“注册”按钮进行数据传递。...通过getIntent()方法获取到Intent对象,然后通过该对象的getStringExtra()方法获取输人的用户名,并将得到的用户名绑定在TextView控件中进行显示。...,如桌Activity设置了该属性,则跳到该Activity页面时标题栏会显示在Activity中配置的名称,否则显示在Application中配置的名称。...运行程序,在MainActivity的文本框中输入对应信息,可以看到左图所示效果。单击“注册”按钮,此时会跳转到SecondActivity界面,显示输人的信息,如右图所示。 ?
(R.id.gv_keybord); 编写按钮逻辑 // 初始化按钮上应该显示的数字 for (int i = 1; i < 13; i++) { Map...,用数组不能往adapter中填充 private ImageView tvCancel;//取消按钮 private TextView tvForget;//忘记密码按钮 private int...(R.id.gv_keybord); //设置键盘显示按钮到集合 setView(); // 必须要,不然不显示控件 addView(view); } //设置按钮显示内容...private void setView() { // 初始化按钮上应该显示的数字 for (int i = 1; i < 13; i++) { Map map...(viewHolder); } else { viewHolder = (ViewHolder) convertView.getTag(); } //设置按钮显示数字 viewHolder.btnKey.setText
概述 本节课介绍Android中可实现二级可展开收缩列表的ExpandableListView容器,笔者感觉它非常难用并且难理解,很多时候我们可能需要对控件进行扩展和定制,然而它不太方便扩展,它使用难点主要在数据结构上和对控件的事件监听...,其他的实现方式类似ListView,下面会提供笔者在实际开发中使用到的案例。...上面实现的效果可展开的二级列表,每个组项都可能有若干个子项,默认的ExpandableListView不太美观,我们需要通过自定义布局类美化它,在使用过程中有一些需要我们去了解的点,会在实现过程提一下。...(组和子元素是否持有稳定的ID) getGroupView(获取显示指定组的视图对象) getChildView(获取显示指定项的视图对象) isChildSelectable(子项是否可选中) 传入组项列表...,每个组项下面有若干个子项,我们在使用的时候首先要确定要展示的数据结构,组项有groupPosition来标识位置,然而子项需要根据groupPosition和ChildPosition来标识位置,我们设置数据的时候分别在
一、TextView组件(文本框) TextView android:id=”@+id/firstText” android:text=”第一行“ android:gravity=”top” android...的xml属性很多具体参考手册即可; 2、 由于TextView中只用于显示文字,如果图文混合可以绘制一个drawable对象即可 xml属性对照(部分) android:autoLink是否将符合指定格式的文本转换可单击的超链接形式...(web、email、phone、map、all、none) android:cursorVisible设置文本框中的光标是否可见 android:drawableTop在左侧绘制一个图像 android...:editable是否可以编辑 android:ellipsize超过框长度如何处理(五个属性) android:gravity设置文本框内文本对齐方式 android:hint文本框内容为空时,默认显示文字...android:selectAllOnFocus:文本内容可选择,一般配置hint使用 android:single设置文本是否是单行模式 二、Button组件ImageButton(按钮) 三、EditText
接下来要做的事情是在MainActivity中的布局文件中添加一个按钮,然后在代码中获取一个按钮,并且监听按钮的点击事件,按钮点击事件触发后弹出一个提示框。...(1)在"Go Second Activity" button的单击事件中添加跳转代码,跳转到SecondActiviy,代码如下, 下方代码是放在onCreate方法中。...intent.putExtra("extra_data", data); (3) 在新的Activity中我们需要获取传过来的值显示在TextView上,并且点击一个Back按钮返回到上一层Activity...然后把获取的值显示在TextView上。之后点击Button返回。 Button中的finish()方法是结束当前Activity,就会自动返回上一个Activity。...然后从ThirdActivity中点击Back按钮进行返回就会在上一个Activity中的TextView上显示ThirdActivity中返回的值,具体效果如下所示。
1.Button控件 Butotn控件,主要用来实现一些命令操作,通过注册监听事件来实现。首先需要在xml文档中放入一个button按钮。...中设置该控件的相关属性,包括layout_width等。...findViewById()来获取该button控件,为该控件实现setOnClickListener()方法,该方法可以响应button的单击事件。...2、ImageButton控件 ImageButton控件,可以作为button的另外一种扩展,他可以drawable中显示图标。 ImageButton控件的注册。...当鼠标单击的时候显示不同的图片。我们需要在drawable文件夹中加入一个xml文档。 <?xml version="1.0" encoding="utf-8"?
下面的示例程序示范了如何通过显式Intent (指定了 Component属性)来启动另一个 Activity。...该程序的界面布局很简单,界面中只有一个按钮,用户单击该按钮将会启动第二个Activity。此处不再给出该程序的界面布局文件。...下面程序的第一个Activity非常简单,它只包括一个普通按钮,当用户单击该按钮时,程序会“跳转”到第二个Activity。...运行上面的程序,单击程序中的“启动指定 Action、默认Category对应的Activity”按钮,将看到下图所示界面。 ?...运行上面的程序,单击程序中的“启动指定Action、指定 Category对应的Activity”按钮,将看到下图所示的界面。 ?
先来看效果图: demo中有三个group item和多个child item,group item包括一个指示器,一个标题和一个按钮。...item时显示 return childMap.get(groupPosition).get(childPosition).getTitle(); } /* * 取得给定分组中给定子视图的...Object getGroup(int groupPosition) { return groupTitle.get(groupPosition); } /** * 取得分组数...中,我们给ExpandableListView添加了上下文菜单,长按group或者child的某一项都能弹出上下文菜单,另外,在group和child中,都添加了一个 这样的按钮,本来是打算,点击group...中的此按钮弹出和长按group时弹出一样的上下文菜单,点击child上面的此按钮时也弹出相应的上下文菜单,但是此问题没能解决。
选择菜单后打开Kotlin的Activity创建页面,单击“Next”按钮进入创建信息的填写页面,如下图所示: ?...这里填上Activity的名称EasyActivity,对应的布局文件名则为activity_easy,最后单击“Finish”按钮完成EasyActivity.kt的创建。...接下来是本文的重点,以前我们操纵控件之时,都要先通过findViewById方法获得控件对象,然后再调用相关函数设置对象属性。...比如现在有个名为tv_hello的TextView控件,准备在代码中把tv_hello的显示文本改为“你好呀”,这用Java编码的话即是下面两行代码: TextView tv_hello =...比如修改TextView的显示文本,采用Kotlin编码只要下面一行: tv_hello.setText("你好呀") 如此一来,原来的两行代码精简到一行代码,去掉了原先获取控件对象的冗余代码
二、示例 接下来通过一个示例来学习Activity如何通过Bundle回传数据。...MainActivity主要用于响应按钮的点击事件,并将返回的装备信息显示到指定的控件中,具体代码如下所示: package com.jinyu.cqkxzsxy.android.activity.equipmentupdate...android:name=".ShopActivity" android:label="购买装备"/> 运行程序,在主界面中单击...“主人购买装备”按钮,会跳转至装备购买页面,如中图所示。...从右图可以看出,主人购买装备完成后,购买的装备会显示在界面控件中,并且进度条的值会随着装备的购买而增加。