0

ImageViewを拡張するために作成したクラスをテストしようとしています。明らかにコードを実行する前に、構築時にクラッシュしました(デバッガーを使用してステップスルーしても、構築コードのブレークポイントに到達しませんでした)。健全性チェックとして、私はこのクラスを作成しました:

package com.blah.thing;

import android.content.Context;
import android.util.AttributeSet;
import android.widget.ImageView;

public class DoNothing extends ImageView {

    public DoNothing(Context context) {
        super(context);
        // TODO Auto-generated constructor stub
    }

    public DoNothing(Context context, AttributeSet attrs) {
        super(context, attrs);
        // TODO Auto-generated constructor stub
    }

    public DoNothing(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        // TODO Auto-generated constructor stub
    }

}

それでもクラッシュします。私はそれを基本的に何もしないアクティビティから呼んでいます(これまでのところ):

    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        Context context = getApplicationContext();
        DoNothing dn = new DoNothing(context);
        setContentView(R.layout.main);
    }

このアクティビティは、メインプロジェクトと一緒にAndroidテストプロジェクトにあります...依存関係などを修正するために何かする必要がありますか?ちなみに、私はDoNothing、Contextなどを参照する必要があるすべてのパッケージをインポートしています。

ありがとう!

4

1 に答える 1

0

使ってみてください

DoNothing dn = new DoNothing(this); 

それ以外の

Context context = getApplicationContext();         
DoNothing dn = new DoNothing(context); 

onCreate(...)

于 2011-07-01T14:28:06.577 に答える