..
在前一章不是故意的读者提供一个优化版本的监听器,因为它是宁愿先讲解基本的操作,以避免混乱和遵循暴露线性路径。 从实施的角度来看,然而,上述的代码 - 如说 - 当然不是首选的解决方案。
我们现在看到的,因此, 我们的听众是通过创建一个在两个OnClickListener使用方法setOnClickListener按钮调用对象的优化实施 。
Posizioniamoci,然后按文件HelloWorld.java中 ,插入下面的代码:
View.OnClickListener View.OnClickListener经理=新(){
公共无效的onClick(View视图){
开关(view.getId()){
R.id.bottone1家园:
textView1.setText(“E”被单击按钮1 !!!!!");
打破;
R.id.bottone2家园:
textView1.setText(“E”按钮被点击2 !!!!!");
打破;
}
}
};
bottone1.setOnClickListener(经理);
bottone2.setOnClickListener(经理);
因此,首先创建一个类型OnClickListener对象,并在新构造被称为为当时要重新定义OnClick方法,因为我们以前所做类的构造。
我们已经创建的听众有被两个bottonni,因此同样的区别比以前的实现,我们挽救了一个新的侦听器实例的内存。 其优点是更作为按钮的窗口数量可见一斑。
从本质上讲,听者能猜出这两个按钮被点击采取相应行动。 该按钮按下确认使用条件view.getId()为基础的开关。
正如我们所看到的OnClick方法作为参数视图 ,然后按下按钮时, 视图对象初始化按下按钮。 使用该方法的getId()返回的唯一ID相关联的文件中的R.java按钮,我们在前面的章节看到的。
在这一点上就可以区分上的按钮的ID的基础上按下按钮,我们可以看到的情况下建造。
一旦代码的OnClick方法调用的方法上都setOnClickListener按钮作为恰恰是“OnClickListener前面创建一个参数。
一旦了解,在这一章中显示的代码,很容易使用和容易改变。 事实上,这个实现,以及允许使用更少的内存(但并非最不重要时,非常有限的,如手机存储设备编程)具有很大的优势是易于维护。 这是因为如果我们需要改变的监听行为将确切地知道什么样的代码的一部分去编辑。 同样的事情你不能说,如果他们使用旧的实现,因为,在这种情况下,我们应该通过所有的代码去为每一个对一个监听器使用,那么andarne修改代码里面的元素。
改进后的实施也易于扩展,好像我们有需要插入另一个按钮,使用相同的侦听器将遵循以下步骤:
| |
CSS(课程)
网页设计和辅助功能根据W3C CSS和XHTML。 起价29€。 |
| |
前页(电子书)
不知道创建HTML网页。 只需25€。 |
| |
SQL和数据库(课程)
创建和管理关系数据库。 从39€。 |