这是CatList_Activity.java'文件
public class CatList_Activity extends ActionBarActivity{
GridView grid;
private String[] arrImagesStrings;
String Foldername;
CatListAdapter adapter;
private AdView mAdView;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.catlist_activity);
Toolbar toolbar = (android.support.v7.widget.Toolbar) this.findViewById(R.id.toolbar);
toolbar.setTitle("");
this.setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
mAdView = (AdView) findViewById(R.id.adView);
mAdView.loadAd(new AdRequest.Builder().build());
grid=(GridView)findViewById(R.id.lsv_catlist);
Intent i=getIntent();
Foldername=i.getStringExtra("Folder");
arrImagesStrings = listAssetFiles(Foldername);
adapter=new CatListAdapter(CatList_Activity.this, R.layout.catlist_item, arrImagesStrings, Foldername);
grid.setAdapter(adapter);
grid.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
//Toast.makeText(getApplicationContext(), ""+selectedImagePath, Toast.LENGTH_SHORT).show();
//Log.e("name", ""+Foldername+"/"+arrImagesStrings[position]);
Intent intentdraw=new Intent(getApplicationContext(),Draw_Activity.class);
intentdraw.putExtra("Folder", Foldername+"/"+arrImagesStrings[position]);
startActivity(intentdraw);
}
我想做的是增加位置&#39;在另一个文件(称为Draw_Activity.java)中的值,所以当我点击该文件中的一个按钮时,我转到下一页,基本上使位置值位置+ 1.有没有办法做到这一点?
答案 0 :(得分:0)
在Draw_Activity对象中,使公共函数增加或做你想做的事。
public class Draw_Activity ... {
public void increasePosition(){
this.position++;
}
}
如果来自这个班级&#34; CatList_Activity&#34;你无法访问&#34; Draw_Activity&#34;,你可以创建一个静态类来检索另一个对象的实例。
public class Draw_Activity ... {
//private instance
private Draw_Activity instance;
//constructor, if this is a static method you can access it whithout this
//doing this Draw_Activity.increasePosition();
public Draw_Activity {
...
instance = this;
}
//public method to retrive this object
public static Draw_Activity getInstance(){
return instance;
}
}
现在来自你的班级&#34; CatList_Activity&#34;你可以这样做:
public class CatList_Activity extends ActionBarActivity{
....
protected void onCreate(Bundle savedInstanceState) {
Draw_Activity.getInstance().increasePosition();
}
}
我不知道你是否愿意这样做,或者这是否适用于你的问题。希望它能帮到你。
答案 1 :(得分:0)
如果位置使用类似
的意图,则可以传递值intentdraw.putExtra("position", position);
在position
Draw_Activity
int position;
并在下一个活动Draw_Activity
的{{1}}方法中检索此值,您希望像这样增加位置计数器
onCreate(...)
在按钮单击侦听器上的下一个活动上发送此变量..