LinearLayout
クリック時にアクティビティを開始する必要があるカスタム Java クラス (を拡張) を定義しようとしています。私のコードは次のようになります:
public ArizaSatiri(Context context/*, AttributeSet attrs , final Activity aktivite*/ , JSONObject mysql_satiri)
{
super(context/*, attrs*/);
// code to initialize my view :
final Context finalContext = context;
this.setOnClickListener(new OnClickListener() {@Override
public void onClick(View v) {
Intent newIntent = new Intent(finalContext, ArizaDetaylari.class);
finalContext.startActivity(newIntent);
}//onClick
});
}
しかし、インスタンス化されたビューをクリックすると、エラーが発生します:
Calling startActivity() from outside of an Activity context requires the
FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
コードからわかるようActivity
に、コンストラクターに渡してみましたが、うまくいきました。しかし、それは正しい方法ですか?どの方法をお勧めしますか?
編集:
またsetTypeFace()
、ある時点で電話する必要があります。そのためにコンテキストまたはアクティビティを使用する必要がありますか?