[英]how do i link a button to a second activity after linking the first buttons in my main activity to websites?
How do i make a button open a activity if the rest of my buttons are linked to web pages with a onClickListener? 如果我其余的按钮都使用onClickListener链接到网页,那么如何使按钮打开活动?
I go the webpages to open correctly in eclipse by using: 我使用以下方法去网页在Eclipse中正确打开:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button b1=(Button)findViewById(R.id.button1);
public void onClick(View v) {
// TODO Auto-generated method stub
sendToCoaches();
}
private void sendToCoaches() {
// TODO Auto-generated method stub
String url = "http://www.signal5crossfit.com/coaches/";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(android.net.Uri.parse(url));
startActivity(i);
}
});
b7.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
sendToContacts();
}
public void sendToContacts() {
Intent intent = new Intent(AppActivity.this, App2Activity.class);
startActivity(intent);
}
});}}
I changed it to the second example that you up in to include the onClick in my xml file and this is the error i get. 我将其更改为您进入的第二个示例,以将onClick包含在我的xml文件中,这是我得到的错误。
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.Signal5.android/com.Signal5.android.App2Activity}: java.lang.NullPointerException java.lang.RuntimeException:无法实例化活动ComponentInfo {com.Signal5.android/com.Signal5.android.App2Activity}:java.lang.NullPointerException
Does that mean its pointing to nowhere? 这是否意味着它指向无处?
I'm guessing you're using android:onClick="onClick"
in your xml layout. 我猜您在xml布局中使用的是
android:onClick="onClick"
。
Example: 例:
<Button android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 1"
android:onClick="onClick" />
<Button android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 2"
android:onClick="onClick" />
You can check which view was clicked by getting its id: View.getId()
. 您可以通过获取其ID:
View.getId()
来查看单击了哪个视图。
public void onClick(View v) {
switch(v.getId()){
case R.id.button1:
sendToCoaches();
break;
case R.id.button2:
doSomethingElse();
break;
}
}
Another way of doing this would be to set a View.OnClickListener for each button: 另一种方法是为每个按钮设置一个View.OnClickListener:
Button b1 = (Button) findViewById(R.id.button1);
Button b2 = (Button) findViewById(R.id.button2);
b1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
sendToCoaches();
}
});
b2.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
doSomethingElse();
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.