Android无法循环浏览Gridview中的所有数字
我尝试使用Gridview显示餐厅中桌子的总数。用户可以按整数设置表的总数 每个表都有一个从1开始的ID。但是,我所有的表号都是一样的。看起来循环出了问题Android无法循环浏览Gridview中的所有数字,android,android-gridview,Android,Android Gridview,我尝试使用Gridview显示餐厅中桌子的总数。用户可以按整数设置表的总数 每个表都有一个从1开始的ID。但是,我所有的表号都是一样的。看起来循环出了问题 class my_adapter extends BaseAdapter{ LayoutInflater inflater=null; Context ctx; int table_count; my_adapter(Context ctx, int table_count){ this.ctx=ctx; this.tab
class my_adapter extends BaseAdapter{
LayoutInflater inflater=null;
Context ctx;
int table_count;
my_adapter(Context ctx, int table_count){
this.ctx=ctx;
this.table_count=table_count;
}
@Override
public int getCount() {
return table_count; // total no. of tables
}
@Override
public Object getItem(int i) {
return i;
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
View row=view;
if(row==null){
inflater=(LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row=inflater.inflate(R.layout.single,null);
}
TextView tv_table_no=(TextView)row.findViewById(R.id.table_no);
for(int count=1;count<=table_count;count++){
tv_table_no.setText("table number: "+count);
}
return row;
}
}
class my_适配器扩展了BaseAdapter{
排气充气机=空;
上下文ctx;
int table_计数;
my_适配器(上下文ctx,int table_count){
这个.ctx=ctx;
表计数=表计数;
}
@凌驾
public int getCount(){
return table_count;//表的总数
}
@凌驾
公共对象getItem(int i){
返回i;
}
@凌驾
公共长getItemId(int i){
返回i;
}
@凌驾
公共视图getView(int i、视图视图、视图组视图组){
视图行=视图;
if(行==null){
充气器=(LayoutInflater)ctx.getSystemService(Context.LAYOUT\u充气器\u服务);
行=充气机。充气(右布局。单个,空);
}
TextView tv_table_no=(TextView)row.findViewById(R.id.table_no);
对于(int count=1;count替换此
for(int count=1;count<=table_count;count++){
tv_table_no.setText("table number: "+count);
}
希望一切顺利!更换此
for(int count=1;count<=table_count;count++){
tv_table_no.setText("table number: "+count);
}
希望一切顺利!这个for循环是错误的
for(int count=1;count<=table_count;count++){
tv_table_no.setText("table number: "+count);
}
这个for循环是错误的
for(int count=1;count<=table_count;count++){
tv_table_no.setText("table number: "+count);
}
你把Count放在for循环内,这样它就会显示你的最后一个位置。请把它放在for循环外。你把Count放在for循环内,这样它就会显示你的最后一个位置。请把它放在for循环外。你在getView()
方法中循环。
实际上getView()
方法是根据getCount()
方法调用的
移除for
循环,设置i
的值,而不是TextView
上的计数
只需将方法getView()
替换为:
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
inflater = (LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.single,null);
TextView tv_table_no=(TextView)row.findViewById(R.id.table_no);
tv_table_no.setText("table number: "+i);
return row;
}
您正在getView()
方法中循环。
实际上getView()
方法是根据getCount()
方法调用的
移除for
循环,设置i
的值,而不是TextView
上的计数
只需将方法getView()
替换为:
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
inflater = (LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.single,null);
TextView tv_table_no=(TextView)row.findViewById(R.id.table_no);
tv_table_no.setText("table number: "+i);
return row;
}