如何从onCreate中获取OnClickListeners?我是Android编程的新手,现在我喜欢这样:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pname = edtext.getText().toString();
regstat = true;
setContentView(R.layout.activity_studioreg);
}
});
}
但是如何在新方法中获取它们以及如何正确使用它们呢?
答案 0 :(得分:0)
你能做的是 在你的onCreate
startbutton.setOnClickListener(本); 然后 然后实现onclicklistener,如下所示
public calss Your_Class implements OnClickListener {
然后
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.button1:
Toast.makeText(getActivity(), "Button 1 clicked!", Toast.LENGTH_SHORT).show();
break;
case R.id.button2:
Toast.makeText(getActivity(), "Button 2 clicked!", Toast.LENGTH_SHORT).show();
break;
case R.id.button3:
Toast.makeText(getActivity(), "Button 3 clicked!", Toast.LENGTH_SHORT).show();
break;
case R.id.button4:
Toast.makeText(getActivity(), "Button 4 clicked!", Toast.LENGTH_SHORT).show();
break;
}
}
您将在xml中设置按钮的ID,如
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:textAllCaps="false"
android:text="Button 1"
android:textSize="18sp"
android:layout_height="40dp" />
和其他四个按钮一样。
答案 1 :(得分:0)
您也可以使用ButterKnife API,您的代码将更加清晰:
@OnClick(R.id.start_button)
public void onStartButtonTouched() {
// TODO
}