0

通常見られるように、リストビューは 1行ずつレンダリングされます。

しかし、アイテムの左と上を設定して、そのアイテムをどこにでも設定したいと思います。まず、リストビューにはrelativelayout.rightなどの別のレイアウトが必要だと思いますか? 私の質問は、RelativeLayout を ListView に設定できますか? どうやって?

私のコードは

listView.setLayoutParams(new RelativeLayout.LayoutParams(300, 300));

残念ながら、うまくいきません!

しかし、以下のコードは正常に動作します:

listView.setLayoutParams(new LinearLayout.LayoutParams(300, 300));

誰かがそれの何が問題なのか教えてもらえますか? 私の問題を解決するためのより良い方法はありますか?

4

2 に答える 2

0

あなたの場合、ListViewはまったく必要ありません。参照にあるように、http: //developer.android.com/reference/android/widget/ListView.html ListViewは、垂直スクロールリストのアイテムのみを表示できます。相対レイアウトを作成し、子ビューを手動で追加するだけです。

于 2012-08-07T06:42:45.963 に答える
0

ListViewアイテム用に次のようなXMLファイルを作成します。

listview_item.xml

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

  <TextView 
     android:id="@+id/text1"
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" />
</RelativeLayout>

次に、ListView_Adapterクラスで次のことを行います。

public class ListView_Adapter extends ArrayAdapter<String>
{
    public ListView_Adapter(Context c)
    {
        super(c, R.layout.listview_item);
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent)
    {
  //
    }
}
于 2012-08-07T06:45:10.597 に答える