MyException - 我的异常网
当前位置:我的异常网» Android » 随便问四五个有关问题,希望高手帮忙解答上

随便问四五个有关问题,希望高手帮忙解答上

www.MyException.Cn  网友分享于:2013-02-20  浏览:3次
随便问四五个问题,希望高手帮忙解答下。
1,
import andriod.view.View.OnClickListener;

这个语句中,后面这一长串,分别代表着什么。比如说view是一个类,那么View呢?


2,XML中@Override 是什么意思呢。

3,最基础的andriod代码中 et=(EditText)findViewById(R.id.EditText01);
   这个R,这个ID 来自何方呢?
    我怎么记得这个EditText01是在main.XML中定义的。

4,SetOnClickListener(new OnClickListener){
....
....

这里的new是什么意思呢?


5,View何Acitivity有什么关系呢?

------解决方案--------------------
骚年,先去把Java基础打打好吧。

1, andriod.view 是包名,View是类名。OnClickListen是内部接口名。SDK顺便下个源码,跟过去看看就知道了。

2, 你确定是在XML中看到的@Override? 

3, R是自动生成的一个类, id是你自己定义的以及android的一组系统内置资源中定义的。本质上就是键值对啦。

4,创建一个匿名内部类对象。

5,Activity是对交互场景的抽象,内部定义了一个PhoneWindow对象,代表一组特定策略的界面和默认交互行为, 通过指定feature(代码及xml),选定某个特定策略(有无状态栏、横竖屏等)进行展现。

View 是对视图的抽象,一切可见物都可认为是视图(文字、图片等)。同时顶级View(Top Level View)也是窗口的抽象,我们看到的界面,本质是一个窗口 + 以窗口为根的view树,窗口本身也是View, 某种意义上的composite模式,用户交互(触摸、按键消息的传递及处理)和图形绘制都是view树的分发处理。顶级View是指由WMS直接控制的View,其父为ViewRoot,而其它的任意非顶层view的父亲都是ViewGroup, WMS不知道这些子View的存在。

Acitivity的PhoneWindow中有一个顶层view(DecorView),本质上是一个FrameLayout, 里面根据不同策略定义了不同的view树,所有的策略所对应的view树中都有一个View,名字叫content, 表示Activity的主体显示内容,setContentView(A)其实就是把A设置进这个content view.

顶层View通过WindowManager.addView()方法扔给WindowManagerServcie(WMS)处理,WSM负责所有窗口的绘制、显示及消息传递(消息接收由另外的服务负责)。所以setContentView的最后就是WindowManager.addView(decorView, layoutParams),layourParams中保存的实际上就是由xml以及代码中指定的features所转换来的各种参数,什么层级啊、位置啊、背景啊、可否触摸啊本质上都是layoutParams中的一部分。

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有