Java 关于Android中findViewById(intID)方法的澄清
我正在进行头先安卓系统开发,我对它有点困惑 此方法-->findViewById(int id) 我在文件“activity\u find\u beer.xml”中有下面的按钮:Java 关于Android中findViewById(intID)方法的澄清,java,android,android-activity,Java,Android,Android Activity,我正在进行头先安卓系统开发,我对它有点困惑 此方法-->findViewById(int id) 我在文件“activity\u find\u beer.xml”中有下面的按钮: 我的问题是onClickFindBeer(视图视图)的视图类型为 对象作为参数,但在我刚才提到的xml中 android:onClick=“onClickFindBeer”当用户单击 按钮,调用onClickFindBeer方法…谁在传递 在onClickFindBeer(视图视图)中键入View…。这是什么 含蓄的
android:onClick=“onClickFindBeer”
当用户单击
按钮,调用onClickFindBeer方法…谁在传递
在onClickFindBeer(视图视图)中键入View…。这是什么
含蓄的视图
参数,因为它是如何在按钮
类的超类中实现的(它是公共类按钮扩展了TextView
)。添加到XML中的视图实际上是java类。当您为这样的XML项设置属性时,它会相应地从特定java类构造对象。View
类的onClick
方法是onClick(View v)
。通过设置XML,您只要求Button类查找输入的方法,但其签名始终带有一个视图作为参数,它引用了单击的视图findViewById
。但是ActyCity类实现它来搜索视图中由setContentView()
方法分配给它的项视图
参数,因为它是如何在按钮
类的超类中实现的(它是公共类按钮扩展了TextView
)。添加到XML中的视图实际上是java类。当您为这样的XML项设置属性时,它会相应地从特定java类构造对象。View
类的onClick
方法是onClick(View v)
。通过设置XML,您只要求Button类查找输入的方法,但其签名始终带有一个视图作为参数,它引用了单击的视图findViewById
。但是ActyCity类实现它来搜索视图中由setContentView()
方法分配给它的项OnClickListener
时,它与partivular对象(如Textview、Button)连接
find_beer.setOnClickListener
当按下某个按钮时,执行下面的代码
当使用android:onClick=“onClickFindBeer”时,直接在视图的活动中处理单击,而无需实现任何界面
OnClickListener
时,它与partivular对象(如Textview、Button)连接
find_beer.setOnClickListener
当按下某个按钮时,执行下面的代码
当使用
android:onClick=“onClickFindBeer”
时,直接在视图的活动中处理单击操作,而无需实现任何接口基于上面的示例,android:onClick
方法是被调用的方法,因为在java类中调用onClick
方法时,它需要调用一个onClickListener
原因是另一个问题。据我所知,它属于视图类,因为它总是引用设计中的对象 根据上面的示例,
android:onClick
方法是被调用的方法,因为在java类中调用onClick
方法时,它需要调用onClickListener
原因是另一个问题。据我所知,它属于视图类,因为它总是引用设计中的对象
<Button
android:id="@+id/find_beer"
android:text="@string/find_beer"
android:onClick="onClickFindBeer" />
public class FindBeerActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_find_beer);
}
//Call when the button gets clicked
public void onClickFindBeer(View view) {
//Get a reference to the TextView
TextView brands = (TextView) findViewById(R.id.brands);
//Get a reference to the Spinner
Spinner color = (Spinner) findViewById(R.id.color);
//Get the selected item in the Spinner
String beerType = String.valueOf(color.getSelectedItem());
//Display the selected item
brands.setText(beerType);
}
}