这是我的ListView自定义适配器中的一段代码:
@Override
public View getView(int i, View convertView, ViewGroup parent) {
final MovieEntity feedItem=feedTrailersList.get(i);
//LinearLayout Trailers_Linear=(LinearLayout) convertView.findViewById(R.id.Trailers_Linear);
View view=convertView;
if (view==null){
view=LayoutInflater.from(getContext()).inflate(R.layout.trailer_list_item, parent,false);
}
TextView trailerName=(TextView)view.findViewById(R.id.trailer_name);
trailerName.setText(feedItem.getTRAILER_NAME_STRING());
trailerName.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent(String.valueOf(Intent.FLAG_ACTIVITY_NEW_TASK));
intent.setData(Uri.parse(feedItem.getTRAILER_KEY_STRING()));
mContext.startActivity(intent);
}
});
return view;
}
在这里,我试图通过我的上下文启动活动,因为我在一个不在活动中的cutomized适配器类,但它给了我这个错误标题:
ex: java.lang.reflect.InvocationTargetException
cause : android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
我正在使用Intent intent=new Intent(Intent.ACTION_VIEW);
标记,并尝试Intent intent=new Intent(String.valueOf(Intent.FLAG_ACTIVITY_NEW_TASK));
在它显示此异常之后。
任何人都可以告诉我这个例外所指的是什么,你的援助是完全的,并且分别受到赞赏。提前谢谢。
答案 0 :(得分:1)
您的mContext
变量不是Activity
- 您可能正在使用getApplicationContext()
创建mContext
。
在任何情况下,根本不需要Context
变量 - 您可以随时使用getContext()
来检索当前Context
。
答案 1 :(得分:0)
不知道你的mContext是什么。但您始终可以从import multiprocessing
def do_calc(data):
# access num or
# work to update arr
newdata =data * 2
return newdata
def start_process():
print 'Starting', multiprocessing.current_process().name
if __name__ == '__main__':
num = Value('d', 0.0)
arr = Array('i', range(10))
inputs = list(range(10))
print 'Input :', inputs
pool_size = multiprocessing.cpu_count() * 2
pool = multiprocessing.Pool(processes=pool_size,initializer=start_process, )
pool_outputs = pool.map(do_calc, inputs)
pool.close() # no more tasks
pool.join() # wrap up current tasks
print 'Pool :', pool_outputs
获取适当的背景信息。你的意图也很奇怪。它应该与parent.getContext()
崩溃。
Intent标志应该像这样使用:
ActivityNotFoundException: No Activity found to handle Intent
答案 2 :(得分:0)
Main Thread