Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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 Can';无法将我的LinearLayout正确更改为ListView_Android_Mysql_Listview - Fatal编程技术网

Android Can';无法将我的LinearLayout正确更改为ListView

Android Can';无法将我的LinearLayout正确更改为ListView,android,mysql,listview,Android,Mysql,Listview,这是我通过php从mysql数据库中选择图像和文本的代码。它在scrollview中以线性布局显示。我所要做的就是将布局更改为listview 我尝试了listview和其他许多方法,但都不能正常工作。我是android新手,所以我尝试了很长时间。请根据我的要求编辑我的代码来帮助我。请 JAVA @SuppressLint("NewApi") public class News_and_events extends Fragment { private Str

这是我通过php从mysql数据库中选择图像和文本的代码。它在scrollview中以线性布局显示。我所要做的就是将布局更改为listview 我尝试了listview和其他许多方法,但都不能正常工作。我是android新手,所以我尝试了很长时间。请根据我的要求编辑我的代码来帮助我。请

JAVA

    @SuppressLint("NewApi") 
    public class News_and_events extends Fragment {

        private String jsonResult;
        private String url = "http://192.168.2.7/crescentnews/select.php";
        HttpPost httppost;
        StringBuffer buffer;
        HttpResponse response;
        HttpClient httpclient;
        List<NameValuePair> nameValuePairs;
        ProgressDialog dialog = null;
        ImageView img;
        Bitmap bitmap;
        ProgressDialog pDialog;


       // alert dialog manager
        AlertDialogManager alert = new AlertDialogManager();

        // Internet detector
        ConnectionDetector cd;

         InputStream is=null;
         String result=null;
            String line=null;
            int code;

        public News_and_events(){}

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
             pDialog = new ProgressDialog(getActivity());
            View rootView = inflater.inflate(R.layout.activity_news_and_events, container, false);

            cd = new ConnectionDetector(rootView.getContext());

            // Check if Internet present
            if (!cd.isConnectingToInternet()) {
                // Internet Connection is not present
                alert.showAlertDialog(getActivity(),
                        "Internet Connection Error",
                        "Please connect to working Internet connection", false);
                // stop executing code by return
                //return.rootView;
                return rootView;
            }

            accessWebService();
            return rootView;
        }

        // Async Task to access the web
         private class JsonReadTask extends AsyncTask<String, Void, String> {
          @Override
          protected String doInBackground(String... params) { 
              List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(1);


           HttpClient httpclient = new DefaultHttpClient();
           HttpPost httppost = new HttpPost(params[0]);
           try {

            httppost.setEntity(new UrlEncodedFormEntity(nameValuePair));
            HttpResponse response = httpclient.execute(httppost); 
            jsonResult = inputStreamToString(
              response.getEntity().getContent()).toString();
            }

           catch (ClientProtocolException e) {
            e.printStackTrace();
           } catch (IOException e) {
            e.printStackTrace();
           }
           return null;
          }

           private StringBuilder inputStreamToString(InputStream is) {
           String rLine = "";
           StringBuilder answer = new StringBuilder();
           BufferedReader rd = new BufferedReader(new InputStreamReader(is));

           try {
            while ((rLine = rd.readLine()) != null) {
             answer.append(rLine);
            }
           }
            catch (IOException e) {
            // e.printStackTrace();
            Toast.makeText(getActivity().getApplicationContext(),
              "Error..." + e.toString(), Toast.LENGTH_LONG).show();
           }
           return answer;
          }

          @Override
          protected void onPostExecute(String result) {
           display();
          }
         }// end async task

         public void accessWebService() {
          JsonReadTask task = new JsonReadTask();
          // passes values for the urls string array
          task.execute(new String[] { url });
         }

         // build hash set for list view
         public void display() {


          try {
           JSONObject jsonResponse = new JSONObject(jsonResult);
           JSONArray jsonMainNode = jsonResponse.optJSONArray("news_details");
           LinearLayout MainLL= (LinearLayout)getActivity().findViewById(R.id.newslayout); 
           //LinearLayout headLN=(LinearLayout)findViewById(R.id.headsection);

           for (int i = 0; i < jsonMainNode.length(); i++) {
               JSONObject jsonChildNode = jsonMainNode.getJSONObject(i);
                final String head = jsonChildNode.optString("title");
                final String details = jsonChildNode.optString("text");
                final String date = jsonChildNode.optString("date");
                final String image = jsonChildNode.optString("img");
                //final String time = jsonChildNode.optString("time");
                //img = new ImageView(this.getActivity());
                //new LoadImage().execute("http://192.168.2.7/crescentnews/images/"+image);

                img = new ImageView(this.getActivity());
              //  Toast.makeText(getActivity(),image, Toast.LENGTH_LONG).show();

                LoadImage ldimg=new LoadImage();
                ldimg.setImage(img);
                ldimg.execute("http://192.168.2.7/crescentnews/images/"+image);


                TextView headln = new TextView(this.getActivity());
                headln.setText(head); // News Headlines
                headln.setTextSize(16);
                headln.setTextColor(Color.BLACK);
                headln.setGravity(Gravity.CENTER);
                headln.setBackgroundColor(Color.parseColor("#ffcd14"));
              //  headln.setBackgroundResource(R.drawable.menubg);
                headln.setPadding(0, 20, 0, 0);
              //  headln.setHeight(50);
                headln.setClickable(true);


                TextView dateln = new TextView(this.getActivity());
                dateln.setText(date); // News Headlines
                dateln.setTextSize(12);
                dateln.setTextColor(Color.BLACK);
                dateln.setGravity(Gravity.RIGHT);
                //dateln.setBackgroundColor(Color.parseColor("#f20056"));
                dateln.setBackgroundColor(0x00000000);
                dateln.setPadding(0, 0, 10, 10);
                dateln.setWidth(100);
                dateln.setClickable(true);



                View sep=new View(this.getActivity());
                sep.setBackgroundColor(Color.parseColor("#252525"));
                sep.setMinimumHeight(10);

                TextView detailsln = new TextView(this.getActivity());
                detailsln.setText(details); // News Details
                detailsln.setTextSize(12);
                detailsln.setTextColor(Color.BLACK);
                detailsln.setGravity(Gravity.CENTER);
                detailsln.setPadding(10, 10, 10, 10);

                int width = LayoutParams.WRAP_CONTENT;
                int height = 200;
               LinearLayout.LayoutParams parms = new LinearLayout.LayoutParams(width,height);
               img.setLayoutParams(parms);
               parms.gravity = Gravity.CENTER;
               img.setPaddingRelative (15, 15, 15, 15);

                MainLL.addView(headln);
                MainLL.addView(dateln);
             //   MainLL.addView(photo);
                MainLL.addView(img);
                MainLL.addView(detailsln);
                MainLL.addView(sep);

                img.setClickable(true);

               // img.buildDrawingCache();  
               // final Bitmap bmap = img.getDrawingCache();
                headln.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        // TODO Auto-generated method stub

                        Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                        intent.putExtra("head",head.toString());
                        intent.putExtra("details",details.toString());
                        intent.putExtra("date",date.toString());
                        intent.putExtra("image", image);
                        startActivity(intent);       

                    }
                });

                dateln.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                       // TODO Auto-generated method stub
                    Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                    intent.putExtra("head",head.toString());
                    intent.putExtra("details",details.toString());
                    intent.putExtra("date",date.toString());
                    intent.putExtra("image", image);
                    startActivity(intent);       
                    }
                });

                img.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                    Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                    intent.putExtra("head",head.toString());
                    intent.putExtra("details",details.toString());
                    intent.putExtra("date",date.toString());
                    intent.putExtra("image", image);
                    startActivity(intent);       
                    }
                });

                detailsln.setOnClickListener(new OnClickListener() {
                    @Override
                    public void onClick(View v) {
                           // TODO Auto-generated method stub
                        Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                        intent.putExtra("head",head.toString());
                        intent.putExtra("details",details.toString());
                        intent.putExtra("date",date.toString());
                        intent.putExtra("image", image);
                        startActivity(intent);       
                        }
                    });
           }
          } catch (JSONException e) {
           Toast.makeText(getActivity().getApplicationContext(), "Error" + e.toString(),
             Toast.LENGTH_SHORT).show();
          }
           }

         private class LoadImage extends AsyncTask<String, String, Bitmap> {
             ImageView img;
                         @Override
                             protected void onPreExecute() {
                                 super.onPreExecute();

                                 pDialog.setMessage("Loading Image ....");
                                 pDialog.show();


                         }
             public void setImage(ImageView img ){
             this.img=img;
             }

             protected Bitmap doInBackground(String... args) {
                 try {
                     bitmap = BitmapFactory.decodeStream((InputStream)new URL(args[0]).openStream());
                     } 
                 catch (Exception e) { e.printStackTrace(); }
                 return bitmap;
             }

             protected void onPostExecute(Bitmap image) {
                  if(image != null){
                      img.setImageBitmap(image);

                      pDialog.dismiss(); 
                  }
                  pDialog.dismiss(); 
             } 

         }

         public static boolean isInternetReachable()
         {
             try {
                 //make a URL to a known source
                 URL url = new URL("http://www.google.com");

                 //open a connection to that source
                 HttpURLConnection urlConnect = (HttpURLConnection)url.openConnection();

                 //trying to retrieve data from the source. If there
                 //is no connection, this line will fail
                 Object objData = urlConnect.getContent();

             } catch (UnknownHostException e) {
                 e.printStackTrace();
                 return false;
             }
             catch (IOException e) {
                 e.printStackTrace();
                 return false;
             }
             return true;
         }
    }
@SuppressLint(“NewApi”)
公共类新闻和事件扩展片段{
私有字符串jsonResult;
专用字符串url=”http://192.168.2.7/crescentnews/select.php";
HttpPost-HttpPost;
字符串缓冲区;
HttpResponse响应;
HttpClient-HttpClient;
列出nameValuePairs;
ProgressDialog=null;
图像视图img;
位图;
ProgressDialog;
//警报对话框管理器
AlertDialogManager alert=新建AlertDialogManager();
//网络检测器
连接检测器cd;
InputStream=null;
字符串结果=null;
字符串行=null;
int代码;
公共新闻和事件()
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
pDialog=newprogressdialog(getActivity());
视图根视图=充气机。充气(R.layout.activity\u news\u和\u events,container,false);
cd=新的ConnectionDetector(rootView.getContext());
//检查互联网是否存在
如果(!cd.isConnectingToInternet()){
//Internet连接不存在
alert.showAlertDialog(getActivity(),
“Internet连接错误”,
“请连接到正在工作的Internet连接”,错误);
//通过返回停止执行代码
//return.rootView;
返回rootView;
}
accessWebService();
返回rootView;
}
//访问web的异步任务
私有类JsonReadTask扩展了AsyncTask{
@凌驾
受保护的字符串doInBackground(字符串…参数){
列表名称ValuePair=新的ArrayList(1);
HttpClient HttpClient=新的DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(参数[0]);
试一试{
setEntity(新的UrlEncodedFormEntity(nameValuePair));
HttpResponse response=httpclient.execute(httppost);
jsonResult=inputStreamToString(
response.getEntity().getContent()).toString();
}
捕获(客户端协议例外e){
e、 printStackTrace();
}捕获(IOE异常){
e、 printStackTrace();
}
返回null;
}
私有StringBuilder inputStreamToString(InputStream为){
字符串rLine=“”;
StringBuilder answer=新建StringBuilder();
BufferedReader rd=新的BufferedReader(新的InputStreamReader(is));
试一试{
而((rLine=rd.readLine())!=null){
答:追加(rLine);
}
}
捕获(IOE异常){
//e.printStackTrace();
Toast.makeText(getActivity().getApplicationContext(),
“错误…”+e.toString(),Toast.LENGTH_LONG).show();
}
返回答案;
}
@凌驾
受保护的void onPostExecute(字符串结果){
显示();
}
}//结束异步任务
public void accessWebService(){
JsonReadTask=新建JsonReadTask();
//传递URL字符串数组的值
执行(新字符串[]{url});
}
//为列表视图生成哈希集
公共空间显示(){
试一试{
JSONObject jsonResponse=新的JSONObject(jsonResult);
JSONArray jsonMainNode=jsonResponse.optJSONArray(“新闻详细信息”);
LinearLayout mainl=(LinearLayout)getActivity().findViewById(R.id.newslayout);
//LinearLayout HeadN=(LinearLayout)findViewById(R.id.headsection);
for(int i=0;i    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="match_parent"[![enter image description here][1]][1]  
        android:layout_height="wrap_content" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:baselineAligned="false"

         >

        <LinearLayout
                android:id="@+id/newslayout"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:background="#ffffff"

                >     

            </LinearLayout>


    </LinearLayout>



    </ScrollView>

    </LinearLayout>