当前位置: 编程技术>移动开发
本页文章导读:
▪自定义式样的对话框 自定义样式的对话框
Style 文件, 在values 的xml文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="myDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowNoTitle">true</.........
▪ 软键盘的有关设置 软键盘的相关设置
Manifest里边设置
//设置为隐藏的
<activity android:name=".xxxactivity"
android:windowSoftInputMode="adjustUnspecified|stateHidden" />
//设置为一直展示的
<activity android:name=".EditPersonalInf.........
▪ 【6.22】Handler、Looper、Thread其间的关系 【6.22】Handler、Looper、Thread之间的关系
Looper负责管理消息队列,Handler负责发送处理消息
Thread创建新线程,Looper.myLooper()获得新线程的Looper,Looper.getMainLooper()是获得主线程的Looper
通过new M.........
[1]自定义式样的对话框
来源: 互联网 发布时间: 2014-02-18
自定义样式的对话框
Style 文件, 在values 的xml文件
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="myDialog" parent="@android:style/Theme.Dialog"> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@drawable/fillbox</item> </style> <resources>
fillbox的文件样式
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#f0600000"/> <stroke android:width="3dp" color="#ffff8080"/> <corners android:radius="3dp" /> <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" /> </shape>
调用的时候设置的对话框背景图
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center_horizontal|center_vertical" android:layout_gravity="center_vertical|center_horizontal" android:background="@drawable/mainbg"> <LinearLayout android:layout_width="wrap_content" android:layout_marginTop="10dip" android:orientation="vertical" android:layout_height="wrap_content" android:gravity="center_horizontal|center_vertical" android:layout_gravity="center_vertical|center_horizontal"> <Button android:layout_height="wrap_content" android:text="选项零" android:layout_width="wrap_content" android:id="@+id/zero" android:background="@drawable/itemclickbg" /> <Button android:layout_height="wrap_content" android:text="选项一" android:layout_width="wrap_content" android:id="@+id/first" android:background="@drawable/itemclickbg" /> <Button android:layout_height="wrap_content" android:text="选项二" android:layout_width="wrap_content" android:id="@+id/second" android:background="@drawable/itemclickbg" /> </LinearLayout> </LinearLayout>
展示的时候直接是一个dialog setcontentView即可..
[2] 软键盘的有关设置
来源: 互联网 发布时间: 2014-02-18
软键盘的相关设置
Manifest里边设置
//设置为隐藏的 <activity android:name=".xxxactivity" android:windowSoftInputMode="adjustUnspecified|stateHidden" /> //设置为一直展示的 <activity android:name=".EditPersonalInfoPage" android:windowSoftInputMode="stateAlwaysVisible|adjustResize" />
让EditText失去焦点,使用EditText的clearFocus方法
EditText edit=(EditText)findViewById(R.id.edit); edit.clearFocus();
强制隐藏Android输入法窗口
EditText edit=(EditText)findViewById(R.id.edit); InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(edit.getWindowToken(),0);
EditText始终不弹出软件键盘
EditText edit=(EditText)findViewById(R.id.edit); edit.setInputType(InputType.TYPE_NULL);
[3] 【6.22】Handler、Looper、Thread其间的关系
来源: 互联网 发布时间: 2014-02-18
【6.22】Handler、Looper、Thread之间的关系
Looper负责管理消息队列,Handler负责发送处理消息
Thread创建新线程,Looper.myLooper()获得新线程的Looper,Looper.getMainLooper()是获得主线程的Looper
通过new MyHandler(mainLooper)有参构造函数来让Looper和Handler进行沟通
无参的构造函数,默认获取的是当前线程的Looper
Message message = mHandler.obtainMessage(1, 1, 1, msg);
mHandler.sendMessage(message);
发送消息
定义一个类继承自Handler,改写方法
handleMessage(Message msg)
接收并处理消息
主线程也可以向子线程发送信息,首先新建一个线程并启动,在run()方法里新建子线程的handler,监听主程序的sendMessage,接收到消息后实例化主程序的handler,并sendMessage回去做处理
注意不要在子线程的run()方法里面直接做修改UI的动作,会导致程序直接停止
当UI Thread超过5s没反应时,程序就会弹出异常,所以一些费时的操作,最好丢给子线程去做
最新技术文章: