我需要你的帮助,当数组列表中没有可显示的坐标时,如何处理“获取坐标”按钮中的错误?
这是我的代码:
AlertDialog.Builder mAlert = new AlertDialog.Builder(Hotel.this);
view = getLayoutInflater().inflate(R.layout.alert_background, null);
ImageView Content_img = (ImageView)view.findViewById(R.id.imageView1);
TextView Content_txt1 = (TextView)view.findViewById(R.id.textView1);
Content_img.setImageResource(item_detail.get(position).getImageNumber());
Content_txt1.setText(item_detail.get(position).getName());
mAlert.setTitle(item_detail.get(position).getName()).
setView(view).
setPositiveButton("Get Coordinate", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.dismiss();
Intent intent = new Intent(Hotel.this, MapsActivity.class);
intent.putExtra("lon", item_detail.get(position).lon);
intent.putExtra("lat", item_detail.get(position).lat);
Hotel.this.startActivity(intent);
}
}).create().show();
这是我的数组列表,其中一个数组有坐标,另一个没有:
private ArrayList<ItemDetail> GetSearchResult()
{
ArrayList<ItemDetail> result = new ArrayList<ItemDetail>();
ItemDetail item_detail = new ItemDetail();
item_detail.setName("Taman Sari");
item_detail.setImageNumber(images[0]);
item_detail.ALoc(-6.917222222, 106.9758333);
result.add(item_detail);
item_detail = new ItemDetail();
item_detail.setName("Taman Tirta");
item_detail.setImageNumber(images[1]);
result.add(item_detail);
return result;
}
最佳答案
例如,您可以首先尝试获取lon
和lat
,然后检查它们是否为null
。如果它们为 null
,则显示 Toast
时会出现错误。
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
Intent intent = new Intent(Hotel.this, MapsActivity.class);
Object lan = item_detail.get(position).lon;
Object lat = item_detail.get(position).lat;
if (lan == null || lat == null){
//show toast
} else {
intent.putExtra("lon", lon);
intent.putExtra("lat", lat);
Hotel.this.startActivity(intent);
}
}
关于java - 当数组列表中没有坐标显示时如何处理错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21778385/