2017-02-05 8 views
0

私は自分自身の水平スクロール可能なGridViewを作成しようとしています(何かを使用したくない理由は、コンセプトを使いこなし、それをもっと良く理解したいからです)グリッド項目は画面に表示されません。水平スクロールGridView

GridLayoutはListItemの一部であり、そこでインスタンス化します。ここで

を(私は通常のGridLayoutを使用している場合、それはスクロールビューに追加されていないデータが表示されます)私のXMLファイルです:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent"> 

<FrameLayout 
    android:layout_width="match_parent" 
    android:layout_height="180dp" 
    android:layout_centerVertical="true" 
    android:layout_alignParentStart="true"> 
    <HorizontalScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/horizontalScrollView"> 

     <GridView 
      android:id="@+id/gridview" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      android:columnWidth="100dp" 
     /> 

    </HorizontalScrollView> 
</FrameLayout> 

そして、ここに私のアダプタクラスは次のとおりです。

public class RelatedCarsAdapter extends BaseAdapter { 

private Context mContext; 
private ArrayList<Cars> cars; 

public RelatedCarsAdapter(Context context, ArrayList<Cars> cars) { 
    this.mContext = context; 
    this.cars = cars; 
} 

@Override 
public int getCount() { 
    return cars.size(); 
} 

@Override 
public Object getItem(int i) { 
    return cars.get(i); 
} 

@Override 
public long getItemId(int i) { 
    return i; 
} 

@Override 
public View getView(int position, View view, ViewGroup viewGroup) { 
    TextView dummyTextView = new TextView(mContext); 
    dummyTextView.setText(String.valueOf(position)); 
    return dummyTextView; 
    } 
} 

そして、これは私がそれをインスタンス化する方法である:

GridView gridView = (GridView) rowView.findViewById(R.id.gridview); 
      RelatedCarsAdapter relatedCarsAdapter = new RelatedCarsAdapter(mContext, cars); 
      gridView.setNumColumns(cars.size()); 
      gridView.setAdapter(relatedCarsAdapter); 

答えて