2011-09-16 12 views
0

ヘッダビューをリストビューのようにグリッドビューの上部に配置する必要があります。私はそれがそれをサポートしていないことを知っていますが。しかし、それを持つ方法はありますか?誰かがそれに取り組んでいるかどうかを知りたかっただけですか?あなたは常にリストビューの場合にheaderviewをgridviewに配置する方法

間にGridViewコントロールにヘッダーとフッターのためのTextViewを持つような回避策を持っている

答えて

0

答えは次のようになります。

あなたはもちろん、あなたのListViewの周りarbitray要素を置くことができます。たとえば、2つのTextViewとそれらの間のListViewでレイアウトを定義することができます。これを行う場合は、ListActivityがこのIDを持つビューを検索するときに、ID「@android:id/list」をListViewに割り当てる必要があります。これを行うと、1つのTextViewが常にList(ヘッダー)の上に表示され、もう1つがListViewの下に表示されます。ヘッダー/フッタービューを表示する場合は、リストの先頭/末尾を表示する場合のみ、view.setHeaderView()またはview.setFooterView()を使用できます。例:あなたが一番下に、それは考え方が同じ

であることを、トップ -gridview -textviewに -textviewを持つことになり、独自のレイアウトを行う必要があるのGridViewの場合の

public class MyList extends ListActivity { 

    /** Called when the activity is first created. */ 
    public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 
     // Create an array of Strings, that will be put to our ListActivity 
     String[] names = new String[] { "Linux", "Windows7", "Eclipse", "Suse", 
       "Ubuntu", "Solaris", "Android", "iPhone", "Linux", "Windows7", 
       "Eclipse", "Suse", "Ubuntu", "Solaris", "Android", "iPhone" }; 
     View header = getLayoutInflater().inflate(R.layout.header, null); 
     View footer = getLayoutInflater().inflate(R.layout.footer, null); 
     ListView listView = getListView(); 
     listView.addHeaderView(header); 
     listView.addFooterView(footer); 
     setListAdapter(new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_single_choice, 
       android.R.id.text1, names)); 

    } 
} 

あなたはちょうど言う必要はありませんlistView.addHeaderView(ヘッダー); あなたはレイアウト上のデザインでその効果を発揮します。

+0

ありがとうございました。実際に私はgridviewのためにそれをやりたかった。私は私の場合はリストビューを使用できません。 –

+0

新しい編集を見る – Lukap