Java 无法在android中设置视图
没有日志错误,但我无法设置距离分级和类型的视图 创建一组视图时,是否需要将其放入集合并显示 牵涉其中Java 无法在android中设置视图,java,android,Java,Android,没有日志错误,但我无法设置距离分级和类型的视图 创建一组视图时,是否需要将其放入集合并显示 牵涉其中 我能够为第一个数组的名称和第二个数组的时间设置VIE 排列 但我无法显示第一个阵列的其他视图 Item.java public class Item{ private String Name; private String Time; private String Distance; private String Rating; private Str
- 我能够为第一个数组的名称和第二个数组的时间设置VIE 排列
- 但我无法显示第一个阵列的其他视图
public class Item{
private String Name;
private String Time;
private String Distance;
private String Rating;
private String Type;
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getTime() {
return Time;
}
public void setTime(String time) {
Time = time;
}
public String getDistance() {
return Distance;
}
public void setDistance(String distance) {
Distance = distance;
}
public String getRating() {
return Rating;
}
public void setRating(String rating) {
Rating = rating;
}
public String getType() {
return Type;
}
public void setType(String type) {
Type = type;
}
}
public class MyAdapter extends ArrayAdapter<Item> {
private List<Item> items;
public MyAdapter(Context context, int resource, List<Item> items) {
super(context, resource, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
TextView tt, time, distance, rating, type;
LayoutInflater vi;
vi = LayoutInflater.from(getContext());
v = vi.inflate(R.layout.itemlistrow, null);
tt = (TextView) v.findViewById(R.id.RestaurantNameID);
time = (TextView) v.findViewById(R.id.RestaurantTimeID);
distance = (TextView) v.findViewById(R.id.RestaurantDistanceID);
rating = (TextView) v.findViewById(R.id.RestaurantRatingID);
type = (TextView) v.findViewById(R.id.RestaurantTypeID);
tt.setText(items.get(position).getName());
time.setText(items.get(position).getTime());
distance.setText(items.get(position).getDistance());
rating.setText(items.get(position).getRating());
type.setText(items.get(position).getType());
return v;
}
}
public class MainActivity extends Activity {
// url to make request
private static String url = "http://54.218.73.244:7002/";
String item;
private HashMap<Integer, String> TimeMap = new HashMap<Integer, String>();
ListView yourListView;
List<Item> yourData = new ArrayList<Item>();
MyAdapter customAdapter;
ProgressDialog progressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
yourListView = (ListView) findViewById(R.id.listViewID);
// Instantiating ProgressDialog with onCreate method
progressDialog = new ProgressDialog(MainActivity.this);
new ParsingAsync().execute();
}
private class ParsingAsync extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
progressDialog = ProgressDialog.show(MainActivity.this, "",
"Please Wait", true, false);
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
String _response = null;
String _response1 = null;
try {
HttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION,
HttpVersion.HTTP_1_1);
HttpGet request = new HttpGet(url);
HttpResponse response = httpclient.execute(request);
HttpEntity resEntity = response.getEntity();
_response = EntityUtils.toString(resEntity);
JSONObject jsonObject = new JSONObject(_response);
JSONArray first_array = jsonObject.getJSONArray("restaurants");
JSONArray second_array = jsonObject
.getJSONArray("RestaurantTimings");
for (int i = 0; i < first_array.length(); i++) {
JSONObject c = second_array.getJSONObject(i);
Item item = new Item();
// Storing each json item in variable
int id = c.getInt("_id");
String TIME = c.getString("RestaurantTime");
item.setTime(TIME);
c = first_array.getJSONObject(i);
String NAME = c.getString("restaurantNAME");
String TYPE = c.getString("restaurantTYPE");
String DISTANCE= c.getString("restaurantDISTANCE");
String RATING= c.getString("restaurantRATING");
item.setName(NAME);
yourData.add(item);
}
HttpClient httpclient1 = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION,
HttpVersion.HTTP_1_1);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
progressDialog.dismiss();
customAdapter = new MyAdapter(MainActivity.this,
R.layout.itemlistrow, yourData);
yourListView.setAdapter(customAdapter);
yourListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
item = yourData.get(position).getName();
// String sendingurl="url1?param1=value1";
Intent i = new Intent(MainActivity.this,
RestaurantDesc.class);
i.putExtra("REST", item.toString());
// i.putExtra("key", yourData.get(position).getUrl());
//i.putExtra("CC_RES", item.toString());
startActivity(i);
}
});
}
}
}
MyAdapter.java
public class Item{
private String Name;
private String Time;
private String Distance;
private String Rating;
private String Type;
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getTime() {
return Time;
}
public void setTime(String time) {
Time = time;
}
public String getDistance() {
return Distance;
}
public void setDistance(String distance) {
Distance = distance;
}
public String getRating() {
return Rating;
}
public void setRating(String rating) {
Rating = rating;
}
public String getType() {
return Type;
}
public void setType(String type) {
Type = type;
}
}
public class MyAdapter extends ArrayAdapter<Item> {
private List<Item> items;
public MyAdapter(Context context, int resource, List<Item> items) {
super(context, resource, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
TextView tt, time, distance, rating, type;
LayoutInflater vi;
vi = LayoutInflater.from(getContext());
v = vi.inflate(R.layout.itemlistrow, null);
tt = (TextView) v.findViewById(R.id.RestaurantNameID);
time = (TextView) v.findViewById(R.id.RestaurantTimeID);
distance = (TextView) v.findViewById(R.id.RestaurantDistanceID);
rating = (TextView) v.findViewById(R.id.RestaurantRatingID);
type = (TextView) v.findViewById(R.id.RestaurantTypeID);
tt.setText(items.get(position).getName());
time.setText(items.get(position).getTime());
distance.setText(items.get(position).getDistance());
rating.setText(items.get(position).getRating());
type.setText(items.get(position).getType());
return v;
}
}
public class MainActivity extends Activity {
// url to make request
private static String url = "http://54.218.73.244:7002/";
String item;
private HashMap<Integer, String> TimeMap = new HashMap<Integer, String>();
ListView yourListView;
List<Item> yourData = new ArrayList<Item>();
MyAdapter customAdapter;
ProgressDialog progressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
yourListView = (ListView) findViewById(R.id.listViewID);
// Instantiating ProgressDialog with onCreate method
progressDialog = new ProgressDialog(MainActivity.this);
new ParsingAsync().execute();
}
private class ParsingAsync extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
progressDialog = ProgressDialog.show(MainActivity.this, "",
"Please Wait", true, false);
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
String _response = null;
String _response1 = null;
try {
HttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION,
HttpVersion.HTTP_1_1);
HttpGet request = new HttpGet(url);
HttpResponse response = httpclient.execute(request);
HttpEntity resEntity = response.getEntity();
_response = EntityUtils.toString(resEntity);
JSONObject jsonObject = new JSONObject(_response);
JSONArray first_array = jsonObject.getJSONArray("restaurants");
JSONArray second_array = jsonObject
.getJSONArray("RestaurantTimings");
for (int i = 0; i < first_array.length(); i++) {
JSONObject c = second_array.getJSONObject(i);
Item item = new Item();
// Storing each json item in variable
int id = c.getInt("_id");
String TIME = c.getString("RestaurantTime");
item.setTime(TIME);
c = first_array.getJSONObject(i);
String NAME = c.getString("restaurantNAME");
String TYPE = c.getString("restaurantTYPE");
String DISTANCE= c.getString("restaurantDISTANCE");
String RATING= c.getString("restaurantRATING");
item.setName(NAME);
yourData.add(item);
}
HttpClient httpclient1 = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION,
HttpVersion.HTTP_1_1);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
progressDialog.dismiss();
customAdapter = new MyAdapter(MainActivity.this,
R.layout.itemlistrow, yourData);
yourListView.setAdapter(customAdapter);
yourListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
item = yourData.get(position).getName();
// String sendingurl="url1?param1=value1";
Intent i = new Intent(MainActivity.this,
RestaurantDesc.class);
i.putExtra("REST", item.toString());
// i.putExtra("key", yourData.get(position).getUrl());
//i.putExtra("CC_RES", item.toString());
startActivity(i);
}
});
}
}
}
公共类MyAdapter扩展了ArrayAdapter{
私人清单项目;
公共MyAdapter(上下文、int资源、列表项){
超级(上下文、资源、项目);
这个项目=项目;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
视图v=转换视图;
文本视图tt、时间、距离、等级、类型;
拉平机vi;
vi=LayoutInflater.from(getContext());
v=vi.充气(R.layout.itemlistrow,空);
tt=(TextView)v.findViewById(R.id.RestaurantNameID);
时间=(TextView)v.findViewById(R.id.RestaurantTimeID);
距离=(文本视图)v.findViewById(R.id.RestaurantInstanceId);
评级=(TextView)v.findViewById(R.id.RestaurantingId);
type=(TextView)v.findViewById(R.id.RestaurantTypeID);
tt.setText(items.get(position.getName());
time.setText(items.get(position.getTime());
distance.setText(items.get(position.getDistance());
rating.setText(items.get(position.getRating());
type.setText(items.get(position.getType());
返回v;
}
}
MainActivity.java
public class Item{
private String Name;
private String Time;
private String Distance;
private String Rating;
private String Type;
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getTime() {
return Time;
}
public void setTime(String time) {
Time = time;
}
public String getDistance() {
return Distance;
}
public void setDistance(String distance) {
Distance = distance;
}
public String getRating() {
return Rating;
}
public void setRating(String rating) {
Rating = rating;
}
public String getType() {
return Type;
}
public void setType(String type) {
Type = type;
}
}
public class MyAdapter extends ArrayAdapter<Item> {
private List<Item> items;
public MyAdapter(Context context, int resource, List<Item> items) {
super(context, resource, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
TextView tt, time, distance, rating, type;
LayoutInflater vi;
vi = LayoutInflater.from(getContext());
v = vi.inflate(R.layout.itemlistrow, null);
tt = (TextView) v.findViewById(R.id.RestaurantNameID);
time = (TextView) v.findViewById(R.id.RestaurantTimeID);
distance = (TextView) v.findViewById(R.id.RestaurantDistanceID);
rating = (TextView) v.findViewById(R.id.RestaurantRatingID);
type = (TextView) v.findViewById(R.id.RestaurantTypeID);
tt.setText(items.get(position).getName());
time.setText(items.get(position).getTime());
distance.setText(items.get(position).getDistance());
rating.setText(items.get(position).getRating());
type.setText(items.get(position).getType());
return v;
}
}
public class MainActivity extends Activity {
// url to make request
private static String url = "http://54.218.73.244:7002/";
String item;
private HashMap<Integer, String> TimeMap = new HashMap<Integer, String>();
ListView yourListView;
List<Item> yourData = new ArrayList<Item>();
MyAdapter customAdapter;
ProgressDialog progressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
yourListView = (ListView) findViewById(R.id.listViewID);
// Instantiating ProgressDialog with onCreate method
progressDialog = new ProgressDialog(MainActivity.this);
new ParsingAsync().execute();
}
private class ParsingAsync extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
progressDialog = ProgressDialog.show(MainActivity.this, "",
"Please Wait", true, false);
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
String _response = null;
String _response1 = null;
try {
HttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION,
HttpVersion.HTTP_1_1);
HttpGet request = new HttpGet(url);
HttpResponse response = httpclient.execute(request);
HttpEntity resEntity = response.getEntity();
_response = EntityUtils.toString(resEntity);
JSONObject jsonObject = new JSONObject(_response);
JSONArray first_array = jsonObject.getJSONArray("restaurants");
JSONArray second_array = jsonObject
.getJSONArray("RestaurantTimings");
for (int i = 0; i < first_array.length(); i++) {
JSONObject c = second_array.getJSONObject(i);
Item item = new Item();
// Storing each json item in variable
int id = c.getInt("_id");
String TIME = c.getString("RestaurantTime");
item.setTime(TIME);
c = first_array.getJSONObject(i);
String NAME = c.getString("restaurantNAME");
String TYPE = c.getString("restaurantTYPE");
String DISTANCE= c.getString("restaurantDISTANCE");
String RATING= c.getString("restaurantRATING");
item.setName(NAME);
yourData.add(item);
}
HttpClient httpclient1 = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION,
HttpVersion.HTTP_1_1);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
progressDialog.dismiss();
customAdapter = new MyAdapter(MainActivity.this,
R.layout.itemlistrow, yourData);
yourListView.setAdapter(customAdapter);
yourListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
item = yourData.get(position).getName();
// String sendingurl="url1?param1=value1";
Intent i = new Intent(MainActivity.this,
RestaurantDesc.class);
i.putExtra("REST", item.toString());
// i.putExtra("key", yourData.get(position).getUrl());
//i.putExtra("CC_RES", item.toString());
startActivity(i);
}
});
}
}
}
公共类MainActivity扩展活动{
//发出请求的url
专用静态字符串url=”http://54.218.73.244:7002/";
字符串项;
私有HashMap TimeMap=新HashMap();
ListView你的ListView;
列出您的数据=新建ArrayList();
MyAdapter自定义适配器;
进行对话进行对话;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
yourListView=(ListView)findViewById(R.id.listViewID);
//使用onCreate方法实例化ProgressDialog
progressDialog=新建progressDialog(MainActivity.this);
新建ParsingAsync().execute();
}
私有类ParsingAsync扩展异步任务{
@凌驾
受保护的void onPreExecute(){
super.onPreExecute();
progressDialog=progressDialog.show(MainActivity.this,“,
“请稍候”,对,错);
}
@凌驾
受保护的Void doInBackground(Void…参数){
//TODO自动生成的方法存根
字符串_response=null;
字符串_response1=null;
试一试{
HttpClient HttpClient=新的DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_版本,
HTTP_1_1);
HttpGet请求=新的HttpGet(url);
HttpResponse response=httpclient.execute(请求);
HttpEntity当前性=response.getEntity();
_response=EntityUtils.toString(resEntity);
JSONObject JSONObject=新的JSONObject(_响应);
JSONArray first_array=jsonObject.getJSONArray(“餐厅”);
JSONArray第二个数组=jsonObject
.getJSONArray(“餐厅”);
对于(int i=0;i