无法上班按钮

时间:2012-01-06 08:45:50

标签: android button android-activity

我有这个问题,我的按钮不允许我打开给定的URL。只要我打开这个活动,它就会强行关闭。继承我的代码;

public class TemakiActivity extends Activity {

Button button;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.contentviewer);

    ImageView imageView = (ImageView) findViewById(R.id.videolink);
    imageView.setImageResource(R.drawable.videothumb);

    addListenerOnButton();

}

public void addListenerOnButton() {

    button = (Button) findViewById(R.id.videolink);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
          Intent browserIntent = 
                        new Intent(Intent.ACTION_VIEW, Uri.parse("http://google.com"));
            startActivity(browserIntent);

        }

    });

    TextView helloTxt = (TextView)findViewById(R.id.ingredientslister);
    helloTxt.setText(readTxt());
}

private String readTxt(){

 InputStream inputStream = getResources().openRawResource(R.raw.temakiingredients);
 ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

 int i;
try {
i = inputStream.read();
while (i != -1)
  {
   byteArrayOutputStream.write(i);
   i = inputStream.read();
  }
  inputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

 return byteArrayOutputStream.toString();
}
}

当我打开此活动时,它只是强行关闭!问题似乎与按钮有关,我无法让它工作,任何解决方案?

4 个答案:

答案 0 :(得分:2)

对于ImageView和Button,您具有相同的ID。您必须拥有不同的ID或错误输入。由于id的冲突,编译器会出错。 你有ImageView findViewById(R.id.videolink) 按钮findViewById(R.id.videolink);

答案 1 :(得分:1)

见你使用

button = (Button) findViewById(R.id.videolink);

检查按钮的ID,因为您使用ButtonImageView的相同ID 检查哪个控件有videolink ID?

答案 2 :(得分:0)

 button.setOnClickListener(new Button.OnClickListener() 

我认为你需要使用Button.OnClickListener(); p

答案 3 :(得分:-1)

您的导入似乎有问题。

尝试这样的事情:

button.setOnClickListener(new View.OnClickListener() {