你好,我正在尝试学习android中的屏幕导航
- 虽然没有语法错误,但我收到了这个错误
- 我已经在下面贴出了相关类的代码
CopperChimneyPhotos.java
public class CopperChimneyPhotos extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.copper_chimney_photos);
Button btn=(Button) findViewById(R.id.PhotoButton);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent pt=new Intent(CopperChimneyPhotos.this,CopperChimneyDesc.class);
startActivity(pt);
}
});
}
}
CopperChimneyDesc.java
public class CopperChimneyDesc extends Activity{
private static String url = "http://url:7002/xxxx/";
private static String url1 = "http://url:7002/xxxx/";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.copperchimney_desc_screen);
//getting info from listview to display the name in TopNavigationBarCopperChimneyDescActivityName
TextView topdisp=(TextView) findViewById(R.id.TopNavigationBarCopperChimneyDescActivityName);
topdisp.setText(getIntent().getExtras().getString("CC_RES"));
// Creating JSON Parser instance
JSONObjParser jParser = new JSONObjParser();
// getting JSON string from URL
JSONArray json = jParser.getJSONFromUrl(url);
// getting JSON string from URL
JSONArray json1 = jParser.getJSONFromUrl(url1);
try {
for (int i = 0; i < json1.length(); i++) {
JSONObject c = json1.getJSONObject(i);
// Storing each json item in variable
int id = c.getInt("_id");
String TIME = c.getString("RestaurantTime");
TimeMap.put(id, TIME);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
for (int i = 0; i < json.length(); i++) {
JSONObject c = json.getJSONObject(i);
// remaining code
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Button BACKBUTTON=(Button) findViewById(R.id.TopNavigationBarCopperChimneyDescActivityBackButton);
BACKBUTTON.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent emp1=new Intent(CopperChimneyDesc.this,MainActivity.class);
startActivity(emp1);
}
});
Button PHOTOBUTTON=(Button) findViewById(R.id.CopperChimneyPhotosButton);
最佳答案
你还没有在这里添加任何额外内容
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent pt=new Intent(CopperChimneyPhotos.this,CopperChimneyDesc.class);
startActivity(pt);
在 CopperChimneyPhotos
中,所以 getIntent().getExtras().getString("CC_RES"));
将返回 null
。
我不确定您希望该值从何而来,但需要将其添加到启动此 Activity
的 Intent
中,例如
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent pt=new Intent(CopperChimneyPhotos.this,CopperChimneyDesc.class);
pt.putExtra("CC_RES", stringToAdd);
startActivity(pt);
在分配对某事的值(value)。当您从 MainActivity
转到 Desc
时,您有 extras
但当您从 Photos
转到 Desc 时,您没有
。
关于android - android中 Activity 的导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18278667/