Android选项卡式应用程序 - 连接到谷歌地图的列表

时间:2011-12-27 14:16:37

标签: android google-maps android-layout android-listview

我在其中一个标签中有以下内容:

ListView list=(ListView)findViewById(R.id.countries);

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, COUNTRIES);
list.setAdapter(adapter);

static final String[] COUNTRIES = new String[] {
"List Item 1", "List Item 2", "List Item 3" };

此列表位于选项卡中。我想改变它,所以当点击其中一个项目时(比如我们称之为伦敦大本钟,我想以某种方式将坐标附加到那里)它会通过WebView(最简单)转移到谷歌地图,或者MapView出现在选项卡上(但标签栏仍然可见)。

任何人都可以提供教程或帮助的链接吗?

1 个答案:

答案 0 :(得分:0)

这是我将数据放入arraylist中的代码,我将从Web Service中获取该数据。

public static ArrayList<HashMap<String, String>> mylist;
for (int i = 0; i < nodes.getLength(); i++) {
    HashMap<String, String> map = new HashMap<String, String>();
    map.put("Name",name);
    map.put("Vicinity", vicinity);
    map.put("Latitude", lat);
    map.put("Longitude", lng);
    mylist.add(map);
}

以下是ListView Activity类的代码。我在click listner上实现的,点击listview调用另一个活动并传递点击列表的位置。

ListViewActivity类代码

public class ListViewActivity extends ListActivity implements OnItemClickListener{

    private ListView lv;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.listingatms);

        ListAdapter adapter = new SimpleAdapter(this, mylist , R.layout.listdata, 
                new String[] {"Name", "Vicinity"}, 
                new int[] { R.id.item_title, R.id.item_subtitle});

        setListAdapter(adapter);
        lv = getListView();
        lv.setTextFilterEnabled(true);
        lv.setOnItemClickListener(this);
    }

    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int position, long id) {
        // TODO Auto-generated method stub
        Intent showMapMenusIntent = new Intent(ListViewActivity.this, MapMenus.class);
        showMapMenusIntent.putExtra("Position", position);
        startActivity(showMapMenusIntent);
    }

如果要在同一活动中显示地图,请使用postion变量,并在此基础上,您可以从mylist(ArrayList)获取所有值。

例如position = mylist.get(position).get(“Name”));

这样您就可以从ArrayList获取所有细节,并根据您的要求使用它。

希望这会对你有帮助......