我正在尝试定义一个自定义 Java 类(扩展 a LinearLayout
),它需要在单击时启动一个活动。我的代码如下所示:
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()
在某个时候打电话。我应该为此使用上下文还是 Activity ?