Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.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
Android listAdapter和setadapter使用不愉快_Android_Eclipse_Listview_Adapter - Fatal编程技术网

Android listAdapter和setadapter使用不愉快

Android listAdapter和setadapter使用不愉快,android,eclipse,listview,adapter,Android,Eclipse,Listview,Adapter,编辑如果任何人有相同的问题,我编辑了代码,现在正在工作 首先感谢到目前为止帮助过我的所有人,我是android和java开发的新手,我在适配器和自定义行方面过得很糟糕 好的,我已经根据提供的示例更改了代码,现在是 public class EveryonesDiaries extends ListActivity { private ProgressDialog m_ProgressDialog = null; private ArrayList<Every> m_every =

编辑如果任何人有相同的问题,我编辑了代码,现在正在工作 首先感谢到目前为止帮助过我的所有人,我是android和java开发的新手,我在适配器和自定义行方面过得很糟糕

好的,我已经根据提供的示例更改了代码,现在是

public class EveryonesDiaries extends ListActivity {

private ProgressDialog m_ProgressDialog = null;
private ArrayList<Every> m_every = null;
private EveryAdapter m_adapter = null;
private Runnable viewEvery;
private String strcline;


SharedPreferences pref;
String userid = "";
String pageNum = "";
String maxNum = "";

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.everyonesdiaries);

    m_every = new ArrayList<Every>();
    this.m_adapter = new EveryAdapter(this, R.layout.cellevery, m_every);
    setListAdapter(this.m_adapter);

    pref = getSharedPreferences("pref", MODE_PRIVATE);
    String userid = pref.getString("userid","");
    pageNum = "0";
    maxNum = "3";

    AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);

    StringBuilder data = new StringBuilder();
    data.append("--0xKhTmLbOuNdArY\r\n");
    data.append("Content-Disposition: form-data; name=\"userid\"\r\n\r\n");
    data.append(userid);
    data.append("\r\n--0xKhTmLbOuNdArY\r\n");
    data.append("Content-Disposition: form-data; name=\"pagenum\"\r\n\r\n");
    data.append(pageNum);
    data.append("\r\n--0xKhTmLbOuNdArY\r\n");
    data.append("Content-Disposition: form-data; name=\"maxnum\"\r\n\r\n");
    data.append(maxNum);
    data.append("\r\n--0xKhTmLbOuNdArY\r\n");
    String sendData = data.toString();

    try{
        String usedServer = Common.diaryHistory();
        strcline = Common.connect(sendData, usedServer);
        Log.d("string", strcline);

    }catch(Exception e){        
        e.printStackTrace();
        alertDialog.setTitle(R.string.title_error);
        alertDialog.setMessage(R.string.connection_error);
        alertDialog.setPositiveButton(R.string.ok_button, null);
        alertDialog.show();
    }

    viewEvery = new Runnable(){
        @Override
        public void run() {
            getEvery();
        }
    };

    Thread thread =  new Thread(null, viewEvery, "MagentoBackground");
    thread.start();
    m_ProgressDialog = ProgressDialog.show(EveryonesDiaries.this,     
          "Please wait...", "Retrieving data ...", true);
}

private Runnable returnRes = new Runnable() {

    @Override
    public void run() {
        Log.d("a3", ""+ m_every.size());
        if(m_every != null && m_every.size() > 0){
            m_adapter.notifyDataSetChanged();
            for(int i=0;i<m_every.size();i++)
            m_adapter.add(m_every.get(i));
        }
        m_ProgressDialog.dismiss();
        m_adapter.notifyDataSetChanged();
    }
};

private void getEvery(){

    try{
        //start to work the JSON array
        JSONArray a1 = new JSONArray(strcline);

        //Start decoding the first cycle of the JSON array
        for(int i=0; i < a1.length(); i++){
            JSONArray a2 =  a1.getJSONArray(i);
            Log.d("a1", String.valueOf(a2));
            String userName = a2.getString(1);
            String diaryDate = a2.getString(4);
            Log.d("a2", userName);
            Log.d("a2", diaryDate);
            Every e1 = new Every();
            e1.setUserName(userName);
            e1.setDiaryDate(diaryDate);
            m_every.add(e1);
            Thread.sleep(5000);
            Log.i("a2", ""+ m_every.size());
        }
    }catch(Exception e){
        Log.e("BACKGROUND_PROC", e.getMessage());
        }
    runOnUiThread(returnRes);
        }
公共类EveryonesDiaries扩展ListActivity{
private ProgressDialog m_ProgressDialog=null;
private ArrayList m_every=null;
private EveryAdapter m_adapter=null;
私人可运行视图;
专用字符串字符串字符串;
共享参考优先;
字符串userid=“”;
字符串pageNum=“”;
字符串maxNum=“”;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.EveryonesDiary);
m_every=new ArrayList();
this.m_adapter=new EveryAdapter(this,R.layout.cellEver,m_Ever);
setListAdapter(此.m_适配器);
pref=GetSharedReferences(“pref”,模式为私有);
String userid=pref.getString(“userid”,”);
pageNum=“0”;
maxNum=“3”;
AlertDialog.Builder AlertDialog=新建AlertDialog.Builder(此);
StringBuilder数据=新的StringBuilder();
data.append(“--0xKhTmLbOuNdArY\r\n”);
data.append(“内容处置:表单数据;名称=\“userid\”\r\n\r\n”);
data.append(userid);
data.append(“\r\n--0xKhTmLbOuNdArY\r\n”);
data.append(“内容处置:表单数据;名称=\“pagenum\”\r\n\r\n”);
data.append(pageNum);
data.append(“\r\n--0xKhTmLbOuNdArY\r\n”);
data.append(“内容处置:表单数据;名称=\“maxnum\”\r\n\r\n”);
data.append(maxNum);
data.append(“\r\n--0xKhTmLbOuNdArY\r\n”);
字符串sendData=data.toString();
试一试{
字符串usedServer=Common.diaryHistory();
strline=Common.connect(sendData,usedServer);
Log.d(“字符串”,strcline);
}捕获(例外e){
e、 printStackTrace();
alertDialog.setTitle(R.string.title\u错误);
alertDialog.setMessage(R.string.connection\u错误);
alertDialog.setPositiveButton(R.string.ok_按钮,null);
alertDialog.show();
}
viewEvery=new Runnable(){
@凌驾
公开募捐{
getEvery();
}
};
线程线程=新线程(null,viewEvery,“MagentoBackground”);
thread.start();
m_ProgressDialog=ProgressDialog.show(EveryonesDiaries.this,
“请稍候…”,“正在检索数据…”,为true);
}
private Runnable returnRes=new Runnable(){
@凌驾
公开募捐{
Log.d(“a3”和“+m_every.size());
如果(m_every!=null&&m_every.size()>0){
m_adapter.notifyDataSetChanged();

对于(inti=0;iAndroid,使用JavaServletHTTP请求从JSON数据填充ListView

http://www.mysamplecode.com/2012/07/android-populate-listview-from-json.html
嘿,检查下面的listview链接

http://devtut.wordpress.com/2011/06/09/custom-arrayadapter-for-a-listview-android/


http://windrealm.org/tutorials/android/android-listview.php
在此处自定义行链接

http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/

http://android-er.blogspot.in/2010/06/custom-arrayadapter-with-with-different.html


http://theopentutorials.com/tutorials/android/listview/android-custom-listview-with-image-and-text-using-arrayadapter/

您正在使用多少个listView。根据您提供的代码,您似乎正在使用多个listView或类似的东西。查克,通过谷歌搜索,您将获得这么多示例。@kumar我只需要使用一个listView,这就是问题所在,这正是我一直试图做的,但下一个listView会覆盖上一个listView,正如日志中所示ical对我说,所以我明白我不能在前一个适配器上设置新的适配器。@krishna我的问题不在于JSON,我已经解决了这个问题,特别是因为我正在检索数组,所以它们没有字段idI检查了链接,非常感谢你分享这些,我已经根据你的信息重写了代码ion,但现在我还面临着其他问题,如果你能帮我找到问题,我将非常感谢。谢谢你,我发现我遇到的问题只是我没有在循环之前初始化“m_every=new ArrayList();”。谢谢你给我的信息,这对我帮助很大
http://devtut.wordpress.com/2011/06/09/custom-arrayadapter-for-a-listview-android/


http://windrealm.org/tutorials/android/android-listview.php
http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/

http://android-er.blogspot.in/2010/06/custom-arrayadapter-with-with-different.html


http://theopentutorials.com/tutorials/android/listview/android-custom-listview-with-image-and-text-using-arrayadapter/