小弟刚学习android开发,有一个问题
publicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);//创建一...
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//创建一个线性布局管理器
LinearLayout layout = new LinearLayout(this);
super.setContentView(layout);
layout.setOrientation(LinearLayout.VERTICAL);
//创建一个TextView
final TextView show = new TextView(this);
LinearLayout layout = new LinearLayout(this);
//创建一个按钮
Button bn = new Button(this);
.......
}
LinearLayout layout = new LinearLayout(this);
final TextView show = new TextView(this);
Button bn = new Button(this);
这里的this 怎么解释,越详细越好,我知道this相当于指向当前对象的指针;为什么要用它。之前创建对象时,()内经常为空啊! 不需要传入对象。比如 DataBase db=new DataBase();
我看了下LinearLayout类,TextView类,根本没有定义参数为空的Constructors构造器 public LinearLayout() ,为什么? 必须至少传入Content对象,Content实例对象干吗用的。传入它做什么? 非常谢谢! public LinearLayout(Context context) 展开
super.onCreate(savedInstanceState);
//创建一个线性布局管理器
LinearLayout layout = new LinearLayout(this);
super.setContentView(layout);
layout.setOrientation(LinearLayout.VERTICAL);
//创建一个TextView
final TextView show = new TextView(this);
LinearLayout layout = new LinearLayout(this);
//创建一个按钮
Button bn = new Button(this);
.......
}
LinearLayout layout = new LinearLayout(this);
final TextView show = new TextView(this);
Button bn = new Button(this);
这里的this 怎么解释,越详细越好,我知道this相当于指向当前对象的指针;为什么要用它。之前创建对象时,()内经常为空啊! 不需要传入对象。比如 DataBase db=new DataBase();
我看了下LinearLayout类,TextView类,根本没有定义参数为空的Constructors构造器 public LinearLayout() ,为什么? 必须至少传入Content对象,Content实例对象干吗用的。传入它做什么? 非常谢谢! public LinearLayout(Context context) 展开
4个回答
展开全部
这些空间你要指定它归属于哪个界面管理,所以要指定一个Context。下面是Context的继承关系图:
我们知道上面代码中的this指的就是Activity,传入这个Activity意味着view(就是你new的控件)拥有一个指向activity的引用,进而引用activity占有的资源。同时Activity绘制时也会调用view的draw方法绘制显示控件,Activity销毁时也会回收这个控件。
另外补充下,Android开发布局最好使用res/layout/下用xml文件写,获取控件通过findViewById方法来获取。这样不尽规范,而且易于修改,对代码可读性也有很大的提高(布局归布局,功能归功能),还有维护性(相互不影响)。
展开全部
它是一个上下方对象,指的是当前的Activity,你也可以不用它,直接赋值为null
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
this是就是当前对象,至于你的构造器是,java里面,一般你不写构造器的话就会有个默认的空构造器,就是说没有参数的构造器,任何对象都是。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-06
展开全部
你不用管它干什么的……只要传入一个Context对象就好了,不能传入null。实在好奇的话,可以看看Button的构造函数,看context到底是用到什么地方了(一般是获取资源和自定义属性)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询