使用onItemClick android从数据库传递多个参数

时间:2014-10-19 00:53:12

标签: php android database

当用户使用我的应用点击字符串时,我正试图找出一种传递多个参数的方法。我目前只能传递一个字符串但我必须传递另一个字符串。我正在经过一个城市(IE实际上是城市字符串,波士顿,迈阿密等...)。我的目标是将相关的州与城市一起通过。例如,波士顿也将通过马萨诸塞州,咪咪将通过佛罗里达等...

我的问题是,我如何传递与该城市相关联的州参数?

我传递的信息来自互联网上的网址

我的网址如下所示 http://mywebsite.com/getDealershipCity.php?StateID=florida&CityID=miami

    getAllCitiesTextView.setOnItemClickListener(new OnItemClickListener(){

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {


            String cityClicked = null;
            try {
                cityClicked = jsonArray.getString(position);
            } catch (JSONException e) {
                e.printStackTrace();
            }

            Log.e("showing position before method = ", cityClicked);

            APIConnector haveToAccessAMethod = new APIConnector();
            String cityClickedAfterMethod = haveToAccessAMethod.returnTheCityString(cityClicked);

            Log.e("showing position after method = ", cityClickedAfterMethod);

            Intent show = new Intent(getApplicationContext(), DealerDetailsActivity.class);
            show.putExtra("cityID", cityClickedAfterMethod);

            startActivity(show);


        }


    });

}

1 个答案:

答案 0 :(得分:0)

正如@cYrixmorten建议的那样,您可以创建一个实现Parcelable的持有者类,并将其作为额外内容添加到intent中。您还可以在包含与城市相关联的状态的意图中添加另一个额外内容。如果你选择那个(更短的)解决方案,它看起来像这样:

String stateClickedAfterMethod = ...   

Intent show = new Intent(getApplicationContext(), DealerDetailsActivity.class);
show.putExtra("cityID", cityClickedAfterMethod);
show.putExtra("state", stateClickedAfterMethod);