【发布时间】:2016-12-05 10:02:24
【问题描述】:
在我的适配器中,我的第二个活动已经有一个意图,但它不能将值传递给第二个活动。我怎样才能摆脱它? 谢谢!! 如何将意图活动传递给片段?
第一个片段
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = mInflater.inflate(R.layout.detailsitem, null);
}
if(position ==0) {
}else {
final Product myObj = DetailList.get(position);
final TextView Detailtext = (TextView) convertView.findViewById(R.id.detailsitem);
Detailtext.setText("" + myObj.getProductName());
final TextView Detailsprice= (TextView)convertView.findViewById(R.id.detailsprice);
Detailsprice.setText("" + myObj.getProductPrice());
preview = (ImageButton) convertView.findViewById(R.id.preview);
preview.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent(getActivity().getApplicationContext(),details_gridview_view.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("title", "1");
getActivity().getApplicationContext().startActivity(intent);
startActivity(intent);
}
});
}
return convertView;
}
第二次活动
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.details_gridview_view);
String name = getIntent().getStringExtra("title");
String price =getIntent().getStringExtra("price");
String qty =getIntent().getStringExtra("qty");
TextView titleTextView = (TextView) findViewById(R.id.title);
titleTextView.setText(name);
TextView priceTextView = (TextView) findViewById(R.id.price);
titleTextView.setText(price);
TextView qtyTextView = (TextView) findViewById(R.id.qty);
titleTextView.setText(qty);
【问题讨论】:
-
details_gridview_view 您的活动名称应以大写开头
-
@janki Android 资源文件不能包含大写字母。见stackoverflow.com/questions/15320951/…
标签: java android android-fragments android-intent