Android,搞砸行为

时间:2011-07-25 23:40:22

标签: android

无法解决这个问题(我是一个菜鸟),但我有一个默认活动只从一个图像按钮开始,点击该图像按钮打开第二个活动,其中包含一堆图像按钮,但只有一个有onclick,这是确切的代码:

<ImageButton android:src="@drawable/level1" 
                android:layout_width="wrap_content" android:id="@+id/imageButton1" 
                android:layout_height="wrap_content" 
                android:onClick="button_clicked1">
            </ImageButton>

在java文件中这是我的代码:

public void button_clicked1(View v) {
    //text1.setText("clicked");
    //ib2.setImageResource(R.drawable.level5);
    }

棘手的部分,如果上面的函数是空的,没有任何事情发生,但无论我放在上面的函数中...例如,即使是一个简单的settext,如上面评论的那个,它强制关闭我:((< / p>

完整的java文件,如果您感兴趣:http://pastebin.com/W4sJUKXH
和清单文件(因为问题可能在那里,就像我说的,是一个noobie)http://pastebin.com/yEuG1su7

**我认为错误的地方是:
在清单文件中,我只声明了第二个活动,没有别的......

1 个答案:

答案 0 :(得分:1)

设置ImageViews的id,这是使用一种方法处理许多按钮的方法

public void button_clicked1(View v) {

    switch(v.getId())
    {
      case R.id.myfirstimage:
         //do something
        break;
     case R.id.mysecondimage:
       // do something
      break;

  // add more cases


     default:
       // do something if none of the cases is your image view or do nothing
    }

    }

在对UI组件执行任何操作之前设置setContentView( )。 (这就是你得到一些例外的原因)

 @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.start_levels_screen);
        text1 = (TextView) findViewById(R.id.textView1);
        ib2 = (ImageButton) findViewById(R.id.imageButton2);

    }