[英]how to display selected gridview elements text one by one in listview in android?
I have a listview with three coloumns as itemname, quantity, price. 我有一个列表视图,其中三个列分别是项目名称,数量和价格。 Also i have a gridview buttons.
我也有一个gridview按钮。 Now what i want is when the gridview buttons are clicked, that particular items name need to display in coloumn of itemname in listview.
现在我想要的是单击gridview按钮时,该特定项目名称需要在listview的itemname栏中显示。
package com.example.test;
import java.util.ArrayList;
import java.util.List;
import android.R.string;
import android.support.v7.app.ActionBarActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;
public class MainActivity extends ActionBarActivity {
ListviewAdapter listviewAdapter;
List<Constant> constantlist = new ArrayList<Constant>();
ListView list;
String[] item;
String[] quantity;
String[] price;
//string getprice;
//String balaji = "shankar";
ArrayList<String> ar = new ArrayList<String>();
GridView grid;
static final String[] letters = new String[] {
"A", "B", "C", "D", "E",
"F", "G", "H", "I", "J",
"K", "L", "M", "N", "O",
"P", "Q", "R", "S", "T",
"U", "V", "W", "X", "Y", "Z"};
//private ArrayList<HashMap<String,String>> list;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
grid = (GridView) findViewById(R.id.gridView);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, letters);
grid.setAdapter(adapter);
grid.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
Toast.makeText(getApplicationContext(),
((TextView) v).getText(), Toast.LENGTH_SHORT).show();
//TextView currentLetter = (TextView) v.findViewById(R.id.text1);
//currentLetter.setTextColor(Color.GREEN);
}
});
item = new String[] {"Pizza", "Burger", "Biriyani" };
quantity = new String[] {"1", "2", "3"};
price = new String[] {"10", "60", "60"};
for(int i=0;i<item.length;i++){
Constant constant = new Constant (item[i], quantity[i], price[i]);
constantlist.add(constant);
}
list= (ListView)findViewById(R.id.listview);
listviewAdapter = new ListviewAdapter(this, R.layout.listview_row, constantlist);
list.setAdapter(listviewAdapter);
}
}
}
below is my adapter class 下面是我的适配器类
package com.example.test;
import java.util.List;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
public class ListviewAdapter extends ArrayAdapter<Constant>{
Context context;
LayoutInflater inflater;
List<Constant> constantlist;
public ListviewAdapter(Context context, int resourceId,
List<Constant> worldpopulationlist) {
super(context, resourceId, worldpopulationlist);
//mSelectedItemsIds = new SparseBooleanArray();
this.context = context;
this.constantlist = worldpopulationlist;
inflater = LayoutInflater.from(context);
}
private class ViewHolder{
TextView item;
TextView quantity;
TextView price;
}
public View getView(int position, View view, ViewGroup parent){
final ViewHolder holder;
if(view == null){
holder = new ViewHolder();
view=inflater.inflate(R.layout.listview_row, null);
holder.item = (TextView) view.findViewById(R.id.txt_item);
holder.quantity = (TextView) view.findViewById(R.id.txt_quantity);
holder.price = (TextView) view.findViewById(R.id.txt_price);
view.setTag(holder);
}else{
holder = (ViewHolder) view.getTag();
}
holder.item.setText(constantlist.get(position).getItem());
holder.quantity.setText(constantlist.get(position).getQuantity());
holder.price.setText(constantlist.get(position)
.getPrice());
return view;
}
public List<Constant> getWorldPopulation() {
return constantlist;
}
}
1) On Button Click Listener send data (name of Button) to the activity of Listview or if you have made database then add this into database and in ListActivity call it from database. 1)在Button上单击Listener,将数据(Button的名称)发送到Listview的活动,或者如果您已建立数据库,则将其添加到数据库中,然后在ListActivity中从数据库调用它。
2) If you have done anything then please put it in question so we can give you more acurate answer. 2)如果您做了任何事情,请先提出疑问,以便我们为您提供更准确的答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.