gpt4 book ai didi

android - 从适配器类启动 FragmentActivity

转载 作者:行者123 更新时间:2023-11-29 21:03:35 26 4
gpt4 key购买 nike

我的代码中有一个具有 ListView 的 Activity ,我通过适配器类控制此 ListView 。每个 ListView 中都有一个 TextView,我想通过单击每个项目(TextView)来启动一个 FragmentActivity。这是我的适配器类的代码...

class TrackAdapter extends SimpleAdapter {

Context context;
public TrackAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
}



@Override
public View getView(final int position, View convertView, final ViewGroup parent) {
final TrackAdapter proxy = this;
final View trackView = super.getView(position, convertView, parent);

final TextView name = (TextView) trackView.findViewById(R.id.name);

Intent intent = new Intent(context ,Poet.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
});




return trackView;
}

}

Poet 类扩展了 FragmentActivity 并实现了 ActioBar.TabListener:
public class Poet extends FragmentActivity implements
ActionBar.TabListener {

private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private ActionBar actionBar;


@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.poet);
}

通过检查 logCat 中的日志,我意识到问题出在这部分..
           Intent intent = new Intent(context ,Poet.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);

通过单击每个 TextView 我得到一个“强制关闭”。请帮我解决这个问题!

最佳答案

尝试这个..

上下文为空,您应该 初始化 this.context = context; 这样的上下文

Context context;
public TrackAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
this.context = context;
}

关于android - 从适配器类启动 FragmentActivity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25218258/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com