Android handle 练习

Android handle

 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:paddingBottom="@dimen/activity_vertical_margin"
 6     android:paddingLeft="@dimen/activity_horizontal_margin"
 7     android:paddingRight="@dimen/activity_horizontal_margin"
 8     android:paddingTop="@dimen/activity_vertical_margin"
 9     tools:context=".MainActivity" >
10
11     <TextView
12         android:id="@+id/text_id"
13         android:layout_width="wrap_content"
14         android:layout_height="wrap_content"
15         android:text="@string/hello_world" />
16     <Button
17         android:id="@+id/btn"
18         android:layout_width="wrap_content"
19         android:layout_height="wrap_content"
20         android:text="Button"
21         android:layout_below="@id/text_id"
22
23         />
24
25 </RelativeLayout>
 1 package com.ibox365.s0725001;
 2
 3 import android.os.Bundle;
 4 import android.os.Handler;
 5 import android.os.Message;
 6 import android.app.Activity;
 7 import android.view.Menu;
 8 import android.view.View;
 9 import android.view.View.OnClickListener;
10 import android.widget.Button;
11
12 public class MainActivity extends Activity {
13
14     private Button button;
15     private Handler handler;
16
17     @Override
18     protected void onCreate(Bundle savedInstanceState) {
19         super.onCreate(savedInstanceState);
20         setContentView(R.layout.activity_main);
21
22         button=(Button) findViewById(R.id.btn);
23         button.setOnClickListener(new ButtonListen());
24
25         handler=new myHandle();
26
27     }
28
29     class ButtonListen implements OnClickListener
30     {
31
32         /* (non-Javadoc)
33          * @see android.view.View.OnClickListener#onClick(android.view.View)
34          */
35         @Override
36         public void onClick(View v) {
37             // TODO Auto-generated method stub
38
39             Message msg=handler.obtainMessage();
40             msg.what=2;
41             handler.sendMessage(msg);
42         }
43
44
45     }
46
47     class  myHandle extends Handler{
48
49         /* (non-Javadoc)
50          * @see android.os.Handler#handleMessage(android.os.Message)
51          */
52         @Override
53         public void handleMessage(Message msg) {
54             // TODO Auto-generated method stub
55             super.handleMessage(msg);
56
57         int what    =msg.what;
58         System.out.println(what);
59
60         }
61
62
63     }
64
65     @Override
66     public boolean onCreateOptionsMenu(Menu menu) {
67         // Inflate the menu; this adds items to the action bar if it is present.
68         getMenuInflater().inflate(R.menu.main, menu);
69         return true;
70     }
71
72 }
时间: 2024-08-08 22:43:30

Android handle 练习的相关文章

android handle详解3 ThreadHandler

在android handle详解2的基础上,我们来学习ThreadHandler ThreadHandler的本质就是对android handle详解2的实现 HandlerThread其实还是一个线程,该线程内部自己创建了一个looper对象,这个是子线程独有的Looper,用来做消息的取出和处理 我们来看看HandlerThread的使用 private HandlerThread mHandlerThread; ...... mHandlerThread = new HandlerTh

浅析Android Handle机制

一.Handle的用例: 1.创建handle实例 new handle(); 2.发送信息载体(Message) sendMessage(msg); 3.处理消息 handleMessage(Message msg){}; 二.原理浅析 结合以上的handle调用三部曲,我们将顺藤摸瓜理清Handle.Looper.Message.MessageQueue的逻辑与关系. 1.new Handle():这个操作将生成一个Handle实例,handle实例有三个属性mLooper.mQueue.m

android handle详解2 主线程给子线程发送消息

按照android handler详解分析的原理我们可以知道,在主线程中创建handle对象的时候,主线程默认创建了一个loop对象使用threalocal函数将loop对象和主线程绑定. 我们能不能在子线程中创建一个loop对象和子线程绑定了实际上是可以的 这样我们就在子线程中创建了一个looper对象,将looper对象和子线程绑定了,在子线程中执行Loop.loop()函数的内部是开启了一个死循环对消息队列中的消息进行遍历,所以子线程是永远不会退出的. 当我们在主线程中调用获得subHan

Android学习笔记(二四): 多页显示-SlidingDrawer的使用

这个图可以在Android的doc中,误操作,将原来图片删去,所以上面只是范例,没有透明效果 SlideDrawer是多个(两个页面)的一种显示方式.如上左图所示,普通的,我们显示Hello的Label,当我们按下面的SlidingDrawer的ImageView,即右图所示图标时,可以将SlideDrawer的内容显示上去,如中图.SlidingDrawer可以在Open和Close两个状态之间切换.Open时覆盖,不是所有的Layout都能支持这种叠加覆盖,作为SlidingDrawer的c

从零开始学android&lt;SlidingDrawer 隐式抽屉.三十三.&gt;

SlidingDrawer是一种抽屉型的组件,当用户选择打开此抽屉之后,会得到一些可以使用的"程序集",这样当一个界面要摆放多个组件的时候,使用此组件就可以很好的解决布局空间紧张的问题,SlidingDrawer类的定义如下所示: ava.lang.Object ? android.view.View ? android.view.ViewGroup ? android.widget.SlidingDrawer 常用的方法 1 public void open() 普通 打开隐藏的抽屉

Android phone 拨号UI

界面加载过程 DialtactsActivity.java [java] view plaincopy protected void onCreate(Bundle icicle) { this.setTheme(R.style.DialtactsTheme); super.onCreate(icicle); final Intent intent = getIntent(); fixIntent(intent); //解析布局文件 DialpadGlobals globals = Dialpa

Android项目实战_手机安全卫士流量统计

## 1.抽屉控件SlidingDrawer:一定要配置android:handle(把手)和android:content(内容),并在子View中添加把手和内容的布局```java <SlidingDrawer android:layout_width="match_parent" android:layout_height="match_parent" android:content="@+id/content" android:ha

Android控件之SlidingDrawer(滑动式抽屉)详解与实例

SlidingDrawer效果想必大家也见到过,它就是1.5模拟器上进入应用程序列表的效果.下面是截图 一.简介 SlidingDrawer隐藏屏外的内容,并允许用户通过handle以显示隐藏内容.它可以垂直或水平滑动,它有俩个View组成,其一是可以拖动的handle,其二是隐藏内容的View.它里面的控件必须设置布局,在布局文件中必须指定handle和content. 例如下面 <SlidingDrawer android:layout_width="fill_parent"

Android之Composite

一.listView控件 1.使用listview对数据进行简单的绑定,这里使用Arrayadater适配器进行简单的数据绑定 public class MainActivity extends Activity { private ListView listView; private ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCrea