Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ListView没有';调用onCreate()时不显示任何项_Java_Android_Listview_Oncreate_Onresume - Fatal编程技术网

Java ListView没有';调用onCreate()时不显示任何项

Java ListView没有';调用onCreate()时不显示任何项,java,android,listview,oncreate,onresume,Java,Android,Listview,Oncreate,Onresume,调用onCreate()时,ListView不显示任何项目,但当我锁定并解锁屏幕并调用onResume()时,它会显示任何项目 “Title”是一个异步任务 有人能帮我吗 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final ListView lvView

调用onCreate()时,ListView不显示任何项目,但当我锁定并解锁屏幕并调用onResume()时,它会显示任何项目

“Title”是一个异步任务

有人能帮我吗

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final ListView lvView = (ListView) findViewById(R.id.resList);

    adapter = new CustomAdapter(this, listItems);

    lvView.setAdapter(adapter);

    lvView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Intent myIntent = new Intent(view.getContext(), Detailed.class);
            Nachricht temp = (Nachricht) lvView.getItemAtPosition(position);
            String tempTitel = temp.titel;
            String tempBeschreibung = temp.beschreibung;
            String tempLink = temp.link;

            myIntent.putExtra("Titel", tempTitel);
            myIntent.putExtra("Beschreibung", tempBeschreibung);
            myIntent.putExtra("Link", tempLink);
            view.getContext().startActivity(myIntent);
        }
    });

    new Title().execute();

    updateUI();

}

public void updateUI(){
    adapter.notifyDataSetChanged();
}
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
最终ListView lvView=(ListView)findViewById(R.id.resList);
adapter=新的CustomAdapter(此为listItems);
setAdapter(适配器);
lvView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
Intent myIntent=newintent(view.getContext(),Detailed.class);
Nachricht temp=(Nachricht)lvView.getItemAtPosition(位置);
字符串TENTITEL=温度滴度;
字符串tempBeschreibung=temp.beschreibung;
字符串tempLink=temp.link;
myIntent.putExtra(“滴度”,诱惑度);
myIntent.putExtra(“Beschreibung”,tempBeschreibung);
myIntent.putExtra(“链接”,tempLink);
view.getContext().startActivity(myIntent);
}
});
新标题().execute();
updateUI();
}
公共void updateUI(){
adapter.notifyDataSetChanged();
}
这是我的自定义适配器

public class CustomAdapter extends ArrayAdapter<Nachricht> {
public CustomAdapter(Context context, ArrayList<Nachricht> users) {
    super(context, 0, users);
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // Get the data item for this position
    Nachricht user = getItem(position);
    // Check if an existing view is being reused, otherwise inflate the view
    if (convertView == null) {
        convertView = LayoutInflater.from(getContext()).inflate(R.layout.lv_item, parent, false);
    }
    // Lookup view for data population
    TextView tvName = (TextView) convertView.findViewById(R.id.lvItem_title);
    TextView tvHome = (TextView) convertView.findViewById(R.id.lvItem_desc);
    TextView links = (TextView) convertView.findViewById(R.id.link);
    ImageView imgV = (ImageView) convertView.findViewById(R.id.lvItem_pic);
    // Populate the data into the template view using the data object
    tvName.setText(user.titel);
    tvHome.setText(user.beschreibung);
    links.setText(user.link);
    imgV.setImageBitmap(user.bmp);
    // Return the completed view to render on screen
    return convertView;
}
公共类CustomAdapter扩展了ArrayAdapter{
公共CustomAdapter(上下文、ArrayList用户){
超级(上下文,0,用户);
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
//获取此职位的数据项
Nachricht user=getItem(位置);
//检查是否正在重用现有视图,否则会膨胀视图
if(convertView==null){
convertView=LayoutInflater.from(getContext()).flate(R.layout.lv_项,父项,false);
}
//数据填充的查找视图
TextView tvName=(TextView)convertView.findViewById(R.id.lvItem_title);
TextView tvHome=(TextView)convertView.findViewById(R.id.lvItem_desc);
TextView links=(TextView)convertView.findViewById(R.id.link);
ImageView imgV=(ImageView)convertView.findViewById(R.id.lvItem_pic);
//使用数据对象将数据填充到模板视图中
tvName.setText(user.titel);
tvHome.setText(user.beschreibung);
links.setText(user.link);
setImageBitmap(user.bmp);
//返回要在屏幕上渲染的已完成视图
返回视图;
}
}

“Title”是一个异步任务

这意味着当
updateUI()时,它很可能仍然很忙在UI线程上执行。你必须确保

adapter.notifyDataSetChanged();
没有过早执行,因此将语句放在
AsyncTask
onPostExecute()方法中

“Title”是一个异步任务

这意味着当
updateUI()时,它很可能仍然很忙在UI线程上执行。你必须确保

adapter.notifyDataSetChanged();

没有过早执行,因此将语句放在
AsyncTask

onPostExecute()方法中。有可能在新标题()之前调用updateUI()get。execute()

返回任何数据?因此,用户界面更新时没有数据,也没有显示任何内容

有可能在new Title()之前调用updateUI()get。execute()
返回任何数据?因此,用户界面更新时没有数据,也没有显示任何内容

你在适配器内部创建了什么吗?是的,我创建了:我向listItems ArrayList添加了一个自定义类,就像我说的,当锁定和解锁屏幕时,它会工作。。。我没有重写onResume()。请发布您的整个活动和适配器。在调用onCreate方法时,您确定listItems不是空的吗?您是否在适配器内创建了一些内容?是的,我是这样做的:我向listItems ArrayList添加了一个自定义类,如我所说,当锁定和解锁屏幕时,它会工作。。。我没有重写onResume()。请发布您的整个活动和适配器。调用onCreate方法时,您确定listItems不是空的吗?这就是解决方案。谢谢;)我没有想到这是解决办法。谢谢;)我没想过