0

レイアウトの変更に関する Android チュートリアル ( http://developer.android.com/training/animation/layout.html )をパーソナライズしようとしていますが、コードにはこのコードがあります

public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
    case android.R.id.home:
        // Navigate "up" the demo structure to the launchpad activity.
        // See http://developer.android.com/design/patterns/navigation.html
        // for more.
        NavUtils.navigateUpTo(this, new Intent(this, MainActivity.class));
        return true;

    case R.id.action_add_item:
        // Hide the "empty" view since there is now at least one item in the
        // list.
        findViewById(android.R.id.empty).setVisibility(View.GONE);
        addItem();
        return true;
    }

    return super.onOptionsItemSelected(item);
}

私の場合、メニューにボタンはありませんが、外部ボタンを使用します。このボタンを使用しようとしています:

<Button
            android:id="@+id/buttonPost"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="30dp"
            android:layout_toRightOf="@+id/editTextComment"
            android:text="Post"
            android:onClick="add" />

メソッドで

    public void add(View view) {
    findViewById(android.R.id.empty).setVisibility(View.GONE);
    addItem();

}

しかし、この解決策はうまくいきません。何か案は?

4

2 に答える 2

2

onOptionsItemSelectedmenuは で使用されるオプション用onCreateOptionsMenu(Menu menu)です。で動作させonClickたい場合は、このコードを に移動してください。ButtonswitchButton id

public void add(View v) {

   switch (v.getId()) {
   case R.id.buttonPost:
        findViewById(android.R.id.empty).setVisibility(View.GONE);
        addItem();
        break;
    case R.id.another_button_id:
        // do something else
        break;
    }

}
于 2013-06-28T15:14:41.357 に答える
0

代わりOnClickListenerにボタンに を付けます:

findViewById(R.id.buttonPost).setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        // do something here
    }
});
于 2013-06-28T15:33:11.670 に答える