-3

これはWorld_Heritageアクティビティのコードです。助けてください。3つのボタン(次、前、最初)と画像ビューがあります。次のボタンをクリックすると画像が変更されます。

パブリッククラスWorld_HeritageはActivityを拡張し、View.OnClickListenerを実装します{

ImageView draw = (ImageView)findViewById(R.id.imageView1);
int a=0;
Button butnnext;

/** Called when the activity is first created. */
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.worldheritage);
    Button butnpre = (Button)findViewById(R.id.buttonprevious);
    butnpre.setOnClickListener(this);

    Button butnfir = (Button)findViewById(R.id.buttonfirst);
    butnfir.setOnClickListener(this);

    butnnext = (Button)findViewById(R.id.buttonnext);
    butnnext.setOnClickListener(this);


    // TODO Auto-generated method stub
}

public void onClick(View v)
{
    switch(v.getId())
    {
    case R.id.buttonfirst:
        draw.setImageResource(R.drawable.agra_fort);
        a=0;
        break;

    case R.id.buttonnext:
        if(a==0)
        {
        draw.setImageResource(R.drawable.ajantha_caves);
        a=1;
        }
        else if(a==1)
        {
            draw.setImageResource(R.drawable.bhimbetka);
            a=2;
        }
        else if(a==2)
        {
            draw.setImageResource(R.drawable.champaner);
            a=3;
        }
        else if(a==3)
        {
            draw.setImageResource(R.drawable.chttrabadhi);
            a=4;
        }
        else if(a==4)
        {
            draw.setImageResource(R.drawable.church);
            a=5;
        }
        else if(a==5)
        {
            draw.setImageResource(R.drawable.elephanta);
            a=6;
        }
        else if(a==6)
        {
            draw.setImageResource(R.drawable.ellora_caves);
            draw.setClickable(false);
        }
        break;
    case R.id.buttonprevious:
        a--;
        butnnext.performClick();
        break;
    }

}

}
4

1 に答える 1

1

変化する

ImageView draw = (ImageView)findViewById(R.id.imageView1);

ImageView draw;

以下

setContentView(R.layout.worldheritage);

置く

draw = (ImageView)findViewById(R.id.imageView1);

これは、、などViewsがに含まれているためです。あなたがそれを使用してそれを膨らませるまであなたは存在しません、またはそれ故にあなたはButtonsImagViewsLayoutlayoutsetCOntentView()inflaterViewsnull

また、今後、コメント投稿者からコード/ログキャットなどの投稿を求められた場合は、新しい投稿を作成するのではなく、OPを編集してください。投稿の下にある[編集]ボタンを使用します

于 2013-03-15T20:04:23.843 に答える