Android Listview未刷新
我知道它的回答了很多次,但不知怎么的,对我来说不起作用。我尝试了每一个“Listview不刷新”的线程,但仍然没有运气。我无法刷新我的列表视图。我做错了什么?调试代码时,我可以在dty列表中看到新项,但listview不会显示Android Listview未刷新,android,listview,Android,Listview,我知道它的回答了很多次,但不知怎么的,对我来说不起作用。我尝试了每一个“Listview不刷新”的线程,但仍然没有运气。我无法刷新我的列表视图。我做错了什么?调试代码时,我可以在dty列表中看到新项,但listview不会显示 public class BuzagiListAdapter extends BaseAdapter { private LayoutInflater mInflater; private List<BuzagiKayitDBean>
public class BuzagiListAdapter extends BaseAdapter {
private LayoutInflater mInflater;
private List<BuzagiKayitDBean> mBuzagiList;
Context context;
public BuzagiListAdapter(List<BuzagiKayitDBean> sorgu, Activity activity) {
mInflater = (LayoutInflater) activity.getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
mBuzagiList = sorgu;
}
public void add(List<BuzagiKayitDBean> buz) {
for(BuzagiKayitDBean item :buz)
{
mBuzagiList.add(item);
}
notifyDataSetChanged();
}
@Override
public int getCount() {
return mBuzagiList.size();
}
@Override
public BuzagiKayitDBean getItem(int position) {
return mBuzagiList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View satirView;
satirView = mInflater.inflate(R.layout.buzagilist_row, null);
TextView textView =
(TextView) satirView.findViewById(R.id.txtblDogumSonucuandKupeNo);
TextView textView2 =
(TextView) satirView.findViewById(R.id.txtblCinsiyetandPadok);
BuzagiKayitDBean buz = mBuzagiList.get(position);
textView.setText(buz.getDogumSonuc() + "-" + buz.getKupeNo());
textView2.setText(buz.getCinsiyet() + " -" + buz.getGidecegiPadok());
return satirView;
}
public void updateNewList(ArrayList<BuzagiKayitDBean> array){
mBuzagiList = array;
notifyDataSetChanged();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 2) {
String kpn = data.getStringExtra("kupeno");
txtddtyKupeNo.setText(kpn);
}
if (resultCode == 3) {
ArrayList<BuzagiKayitDBean> arraylist = data.getParcelableArrayListExtra("mylist");
BuzagiKayitDBean buzd = new BuzagiKayitDBean();
adapter = new BuzagiListAdapter(dty, BuzagiKayitActivity.this);
for (BuzagiKayitDBean item : arraylist) {
buzd.setGidecegiPadok(item.getGidecegiPadok());
buzd.setKupeNo(item.getKupeNo());
buzd.setCinsiyet(item.getCinsiyet());
buzd.setDogumSonuc(item.getDogumSonuc());
}
dty.add(buzd);
if(adapter == null){
adapter = new BuzagiListAdapter(dty, BuzagiKayitActivity.this);
buzlist.setAdapter(adapter);
}else{
adapter.updateNewList((ArrayList<BuzagiKayitDBean>)dty);
}
}
}``
公共类BuzagiListAdapter扩展BaseAdapter{
私人停车场;
私人名单;
语境;
公共BuzagiListAdapter(sorgu列表,活动){
mInflater=(LayoutFlater)activity.getSystemService(
上下文。布局(充气机和服务);
mBuzagiList=sorgu;
}
公共无效添加(列表buz){
用于(BuzagiKayitDBean项目:buz)
{
mBuzagiList.添加(项目);
}
notifyDataSetChanged();
}
@凌驾
public int getCount(){
返回mBuzagiList.size();
}
@凌驾
公共BuzagiKayitDBean getItem(int位置){
返回mBuzagiList.get(位置);
}
@凌驾
公共长getItemId(int位置){
返回位置;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
satirView视图;
satirView=mInflater.flate(R.layout.buzagilist_行,空);
文本视图文本视图=
(文本视图)satirView.findViewById(R.id.txtblDogumSonucuandKupeNo);
文本视图文本视图2=
(TextView)satirView.findViewById(R.id.TXTBLCINSIYES和PADOK);
BuzagiKayitDBean buz=mBuzagiList.get(位置);
textView.setText(buz.getDogumSonuc()+“-”+buz.getKupeNo());
textView2.setText(buz.getCinsiyet()+“-”+buz.getGidecegiPadok());
回归萨蒂尔维;
}
公共无效更新列表(ArrayList数组){
mBuzagiList=数组;
notifyDataSetChanged();
}
}
@凌驾
受保护的void onActivityResult(int请求代码、int结果代码、意图数据){
//TODO自动生成的方法存根
super.onActivityResult(请求代码、结果代码、数据);
if(requestCode==2){
字符串kpn=data.getStringExtra(“kupeno”);
txtdtykupeno.setText(kpn);
}
如果(结果代码==3){
ArrayList ArrayList=data.getParcelableArrayListExtra(“mylist”);
BuzagiKayitDBean buzd=新的BuzagiKayitDBean();
适配器=新的BuzagiListAdapter(dty,BuzagiKayitActivity.this);
for(BuzagiKayitDBean项:arraylist){
buzd.setGidecegiPadok(item.getGidecegiPadok());
buzd.setKupeNo(item.getKupeNo());
buzd.setCinsiyet(item.getCinsiyet());
buzd.setDogumSonuc(item.getDogumSonuc());
}
dty.add(buzd);
if(适配器==null){
适配器=新的BuzagiListAdapter(dty,BuzagiKayitActivity.this);
buzlist.setAdapter(适配器);
}否则{
adapter.updateNewList((ArrayList)dty);
}
}
}``
试试看:
如果(结果代码==3){
ArrayList ArrayList=data.getParcelableArrayListExtra(“mylist”);
for(BuzagiKayitDBean项:arraylist){
BuzagiKayitDBean buzd=新的BuzagiKayitDBean();
buzd.setGidecegiPadok(item.getGidecegiPadok());
buzd.setKupeNo(item.getKupeNo());
buzd.setCinsiyet(item.getCinsiyet());
buzd.setDogumSonuc(item.getDogumSonuc());
dty.add(buzd);
}
if(适配器==null){
适配器=新的BuzagiListAdapter(dty,BuzagiKayitActivity.this);
buzlist.setAdapter(适配器);
}否则{
适配器。添加(dty);
}
dty中的dty是什么。add(buzd)lineArrayList dty=new ArrayList();您在for(ArrayList)中多次设置buzd。在您只向dty添加一个buzd并更新适配器之后。除了if块(adapter==null)之外,您是否在任何其他adapter=new buzagilistapter(dty,buzagikayitaptivity.this)之前使用这一行?
Try ths:
if (resultCode == 3) {
ArrayList<BuzagiKayitDBean> arraylist = data.getParcelableArrayListExtra("mylist");
for (BuzagiKayitDBean item : arraylist) {
BuzagiKayitDBean buzd = new BuzagiKayitDBean();
buzd.setGidecegiPadok(item.getGidecegiPadok());
buzd.setKupeNo(item.getKupeNo());
buzd.setCinsiyet(item.getCinsiyet());
buzd.setDogumSonuc(item.getDogumSonuc());
dty.add(buzd);
}
if(adapter == null){
adapter = new BuzagiListAdapter(dty, BuzagiKayitActivity.this);
buzlist.setAdapter(adapter);
}else{
adapter.add(dty);
}