作者bukiya (武器店)
看板AndroidDev
标题Re: [问题] 有关activity shared 疑问?
时间Fri Sep 7 10:54:30 2012
※ 引述《sweet00914 (别理我)》之铭言:
: 专案架构如下:
: main1.java -> main1.xml -> 1textview,1button(+id/btn_1)
: main2.java -> main2.xml -> 2button(+id/btn_1,+id/btn_2)
: 因为main2.java的其中一个button与main1.java的button使用相同的button/id
: 请问该如何让main2.java共用main1.java的btn_1的元件及事件呢?
: PS:继承?
: -----------------------------------------------
: 记得刚开始学习android的时候有测试过这样子的专案,
: 但是时间太久了,忘记怎麽用了。
: 拜托各位大大提醒~及建议ꄰ.0
如果Activity没有共通的部份,正常是把共用的button拉出来就好,
单独写一个button.xml放在/res/layout/
然後main1.xml和main2.xml中放button的地方用
<include layout="@layout/button"/>
将button放进main1和main2里。
click的部份就写一个共用的class,像下面这样:
public class ButtonClick implements OnClickListener {
@Override
public void onClick(View v) {
// do something
}
}
然後在main1.java和main2.java中,将clickListener放到要用的button中
Button bt = (Button) findViewById(R.id.button_id);
bt.setOnClickListener(new ButtonClick());
<include/> 可参考android developer的文章
http://ppt.cc/DsQN
layout有另外一种共用的方式ViewStub,可参考:
http://ppt.cc/NRMZ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.91.121
1F:→ sweet00914:感谢大大的建议,您的方式也是可行的。感谢~0 09/07 11:20
2F:推 kewang:这个方式比较好 09/07 13:01