-2

Androidでこのアプリを実行するとエラーが発生します:

エラー :->>" 残念ながら exampleapp は停止しました "

私を助けてください..行を削除すると:

logoImage.setOnClickListener(this);

問題ありません。問題なく動作しています。 setOnClickListener() で間違いを犯したと思います。

ありがとう !

    package com.hightrax.mrgod;
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ImageView;

    public class Main extends Activity implements OnClickListener
    {

    ImageView logoImage;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        logoImage = (ImageView) findViewById(R.drawable.logo);
        logoImage.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    }
    }
4

3 に答える 3

1

findViewByIdリソース ID であるパラメーターが必要です。ドローアブル ID を追加しました。

ImageView の ID が「imageView1」の場合は、次のようにする必要があります。 logoImage = (ImageView) findViewById(R.id.imageView1);

于 2013-01-08T16:39:23.520 に答える
0

これ:

logoImage = (ImageView) findViewById(R.drawable.logo);

...おそらくこれであるはずです:

logoImage = (ImageView) findViewById(R.id.logo);

<ImageView />...これは、次のように、レイアウト XML に idを持つことも想定しています@+id/logo

<ImageView
    android:id="@+id/logo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
/>

ImageViewid を使用していない場合は@+id/logo、上記を選択したものに変更R.id.logoしてください。:-)

TLDR: のリソース識別子に基づいてビューを見つけようとしていますDrawable。これは、あなたが与えた識別子と同じではありませんImageView

于 2013-01-08T16:39:01.007 に答える
0

変化する

logoImage = (ImageView) findViewById(R.drawable.logo);

logoImage = (ImageView) findViewById(R.id.logo);

于 2013-01-08T16:39:44.737 に答える