Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.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 Android:滚动视图中的简短布局_Java_Android_Android Layout - Fatal编程技术网

Java Android:滚动视图中的简短布局

Java Android:滚动视图中的简短布局,java,android,android-layout,Java,Android,Android Layout,我最近刚刚对我的应用程序进行了大修,使用ListView,而不是使用经典的TextView.setText并循环膨胀布局。我能够很好地实现这一点,但现在我有一个问题,让它填充屏幕。这是我代码中做这项工作的部分 //Place JSON data into array one item at a time JSONArray jArray = new JSONArray(result); //Loop through each record in t

我最近刚刚对我的应用程序进行了大修,使用ListView,而不是使用经典的TextView.setText并循环膨胀布局。我能够很好地实现这一点,但现在我有一个问题,让它填充屏幕。这是我代码中做这项工作的部分

        //Place JSON data into array one item at a time
        JSONArray jArray = new JSONArray(result);
        //Loop through each record in the database
        //Get ListView
        ListView lv= (ListView)findViewById(R.id.listview);
        // create the grid item mapping
        String[] from = new String[] {"lblQuote", "lblBuzzed", "lblShared", "lblSaid", "lblLikes", "lblHates", "lblLocation", "lblDate"};
        int[] to = new int[] { R.id.lblQuote, R.id.lblBuzzed, R.id.lblShared, R.id.lblSaid, R.id.lblLikes, R.id.lblHates, R.id.lblLocation, R.id.lblDate };

        for(int i=0;i<jArray.length();i++){
            Log.i("uDrew Debug", "Made it into JSONArray Loop");

            //Get this record
            JSONObject json_data = jArray.getJSONObject(i);

            //Put each result into variables for later handling
            strFName = json_data.getString("FName");
            strLInitial = json_data.getString("LInitial");
            strCity = json_data.getString("City");
            strState = json_data.getString("State");
            strDate = json_data.getString("Date");
            strQuote = json_data.getString("Quote");
            intLikes = Integer.parseInt(json_data.getString("Likes"));
            intHates = Integer.parseInt(json_data.getString("Hates"));
            strFNameSaid = json_data.getString("FNameSaid");
            strLInitialSaid = json_data.getString("LInitialSaid");
            intBuzz = Integer.parseInt(json_data.getString("Buzz"));


            Log.i("uDrew Debug", "Made it past JSON Parsing");


            switch(intBuzz){
                case 1: 
                    strBuzzed = ("One Beer\nSyndrome");
                    break;
                case 2: 
                    strBuzzed = ("Buzzed");
                    break;
                 case 3: 
                     strBuzzed = ("Drunk");
                    break;
                 case 4: 
                     strBuzzed = ("Trashed");
                    break;
                 case 5: 
                    strBuzzed = "Retarded";
                    break;
            }                       
            HashMap<String, String> map = new HashMap<String, String>();
            map.put("lblQuote", strQuote);
            map.put("lblBuzzed", strBuzzed);
            map.put("lblShared", strFName + " " + strLInitial);
            map.put("lblSaid",strFNameSaid + " " + strLInitialSaid);
            map.put("lblDate", strDate);
            map.put("lblLocation", strCity + ", " + strState);
            map.put("lblLikes", intLikes.toString());
            map.put("lblHates", intHates.toString());
            fillMaps.add(map);



        }//End For loop
     // fill in the grid_item layout
     SimpleAdapter adapter = new SimpleAdapter(this, fillMaps, R.layout.myviews, from, to);
     lv.setAdapter(adapter);
//将JSON数据一次放入一个数组项中
JSONArray jArray=新JSONArray(结果);
//循环遍历数据库中的每条记录
//获取列表视图
ListView lv=(ListView)findViewById(R.id.ListView);
//创建网格项映射
字符串[]from=新字符串[]{“lblQuote”、“lblBuzzed”、“lblShared”、“lblSaid”、“lblLikes”、“lblHates”、“lblLocation”、“lblDate”};
int[]to=new int[]{R.id.lblQuote,R.id.lblblbuzzed,R.id.lblShared,R.id.lblSaid,R.id.lblLikes,R.id.lblHates,R.id.lblLocation,R.id.lblDate};
对于(int i=0;i
  • 在滚动视图和第一个线性布局中使用android:layout\u height=“fill\u parent”
  • 不要将ListView包装在一个LinearLayout(分隔器视图下面的一个)中。这绝对没有必要

  • (可选)您可能希望将AdView移动到ScollView之外,使其始终可见且不会滚动


  • 以下代码修复了我的问题:

     <?xml version="1.0" encoding="utf-8"?>
     <LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:orientation="vertical" 
    android:id="@+id/BigLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:fillViewport="true"
    android:scrollbars="vertical">
    
        <LinearLayout 
            android:orientation="vertical" 
            android:id="@+id/myMainLayout" 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content">   
    
            <com.google.ads.AdView android:id="@+id/adViewer"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                ads:adUnitId="a14de539f600385"
                ads:adSize="BANNER"
                ads:loadAdOnCreate="true"/>
            <TextView 
                android:layout_height="wrap_content" 
                android:layout_width="fill_parent" 
                android:text="RandomDrunkQuotes.com" 
                android:id="@+id/lblTitle" 
                android:textSize="16px" 
                android:padding="5px" 
                android:textStyle="bold" 
                android:gravity="center_horizontal"/>
    
            <!-- List Divider -->
            <View 
                android:layout_width="fill_parent"
                android:layout_height="1dip"
                android:background="?android:attr/listDivider" />       
    
        </LinearLayout>
    
            <!-- ListView (grid_items) -->
            <ListView 
                android:id="@+id/listview"
                android:layout_height="fill_parent"
                android:layout_width="fill_parent">
            </ListView>     
    
     </LinearLayout>
    
    
    
    我已经完成了第1步和第2步,现在我的滚动条不存在了,但屏幕上充斥着内容。我希望任何人提供帮助。@O1DMBFan是否滚动?您是否尝试过android:scrollbarAlwaysDrawVerticalTrack=“true”?首先感谢您的回复。它不会滚动。我已将您提供的行添加到ScrollView中。这会在加载时显示右侧的滚动条,然后逐渐消失,但我仍然无法滚动内容。
    <?xml version="1.0" encoding="utf-8"?>  
    <LinearLayout android:id="@+id/LinearLayout01"
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
            <LinearLayout
                android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content">
                <TextView 
                    android:id="@+id/lblQuote" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:text="Filler Text"/>
            </LinearLayout>
            <LinearLayout 
                android:orientation="horizontal"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="left">
               <ImageView
                    android:id="@+id/imgUp"
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="0"
                    android:paddingLeft="5px"
                    android:paddingRight="5px"
                    android:src="@drawable/thumbsup"
                    android:layout_gravity="left"/>
               <TextView 
                    android:id="@+id/lblLikes" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="0"
                    android:paddingLeft="5px"
                    android:paddingRight="5px"
                    android:textSize="4pt"
                    android:text="10"
                    android:layout_gravity="left"/>
    
               <TextView 
                    android:id="@+id/lblBuzzedTitle" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:textSize="4pt"
                    android:text="Buzz Level:"/>
                <TextView 
                    android:id="@+id/lblShared" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:text="Shared By: Filler Name"
                    android:textSize="4pt"/>
                <TextView 
                    android:id="@+id/lblSaid" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:text="Said By: Filler Name"
                    android:textSize="4pt"/> 
            </LinearLayout>
            <LinearLayout 
                android:orientation="horizontal"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="left">
                <ImageView
                    android:id="@+id/imgDown"
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="0"
                    android:paddingLeft="5px"
                    android:paddingRight="5px"
                    android:src="@drawable/thumbsdn"
                    android:layout_gravity="center_vertical"/>
              <TextView 
                    android:id="@+id/lblHates" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="0"
                    android:paddingLeft="5px"
                    android:paddingRight="5px"
                    android:textSize="4pt"
                    android:text="2"
                    android:layout_gravity="center_vertical"/>
    
               <TextView 
                    android:id="@+id/lblBuzzed" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:text="High"
                    android:textSize="4pt"
                    android:layout_gravity="center_vertical"/>
                <TextView 
                    android:id="@+id/lblDate" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:textSize="4pt"
                    android:text="04/04/1987 4:32 PM"
                    android:layout_gravity="center_vertical"/>
                <TextView 
                    android:id="@+id/lblLocation" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:textSize="4pt"
                    android:text="Broomfield, CO"
                    android:layout_gravity="center_vertical"/> 
            </LinearLayout>
            <LinearLayout
                android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:weightSum="1">
              <TextView
                android:text=" "
                android:textSize="1pt"
                android:background="#6F7285"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"/>  
    
            </LinearLayout>
    </LinearLayout>
    
     <?xml version="1.0" encoding="utf-8"?>
     <LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:orientation="vertical" 
    android:id="@+id/BigLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:fillViewport="true"
    android:scrollbars="vertical">
    
        <LinearLayout 
            android:orientation="vertical" 
            android:id="@+id/myMainLayout" 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content">   
    
            <com.google.ads.AdView android:id="@+id/adViewer"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                ads:adUnitId="a14de539f600385"
                ads:adSize="BANNER"
                ads:loadAdOnCreate="true"/>
            <TextView 
                android:layout_height="wrap_content" 
                android:layout_width="fill_parent" 
                android:text="RandomDrunkQuotes.com" 
                android:id="@+id/lblTitle" 
                android:textSize="16px" 
                android:padding="5px" 
                android:textStyle="bold" 
                android:gravity="center_horizontal"/>
    
            <!-- List Divider -->
            <View 
                android:layout_width="fill_parent"
                android:layout_height="1dip"
                android:background="?android:attr/listDivider" />       
    
        </LinearLayout>
    
            <!-- ListView (grid_items) -->
            <ListView 
                android:id="@+id/listview"
                android:layout_height="fill_parent"
                android:layout_width="fill_parent">
            </ListView>     
    
     </LinearLayout>