0

整理されたデータを表示するアプリを作成して表示しようとしているので、基本的には、TableLayoutそれらを行に保持するだけでよいと考えているので、それを行う正しい方法は何ですか? 私はこれをxmlに持っています

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

    <TableLayout
        android:id="@+id/tableLayout1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
        <TableRow>
            <TextView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="@string/hello" >
             </TextView>

            <ListView
                android:id="@+id/listView1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="233dp"
                android:layout_marginTop="44dp" >
            </ListView>
        </TableRow>
    </TableLayout>

</LinearLayout>

TableLayoutタグとTableRowタグに次のような警告が表示されるだけです。

"This TableLayout layout or its LinearLayout parent is possibly useless"

だから私が理解しているのは、それが拾っていないということですTableLayout。どうすればこれを修正できますか? これを簡単に行う別の方法はありますか?

4

3 に答える 3

1

だから私が理解しているのは、それがテーブルレイアウトを拾っていないということです。どうすればこれを修正できますか? これを簡単に行う別の方法はありますか?

レンダラーTableLayout を考慮していますが、必要なビューが 1 つ (Aと)lintしかないのに 2 つのビューがあることをツールが検出したため、これらのレイアウトの 1 つを削除する必要があることを警告しています。ページの機能に影響を与えます。LinearLayoutTableLayout

追加しますが、1 行だけの TableLayout があります。TableLayout は、コンテンツがすべての行に基づいて列をフォーマットできるように設計されています。単一の行では、TableLayout と行が一緒になって LinearLayout として機能します。

<LinearLayout>
    <LinearLayout>
        <ListView>
        <TextView>

その場合、TableLayout は追加のレイアウトを追加しないため、廃止され、それを削除してorientationLinearLayout を に変更することでリソースが増加しhorizontalます。

後でさらに を追加する予定がある場合は、同じ理由TableRowで代わりに を削除する必要がLinearLayoutあります。追加情報を追加しないビューになります。テーブル レイアウトがレイアウトを完全に担当するため、それをレイアウト ファイルの親にします (xmlns:android="http://schemas.android.com/apk/res/android"そうする場合は、忘れずに属性を追加してください)。

于 2012-02-10T14:59:42.570 に答える
1

一般的に、私はより強い警告を見てきました:

この LinearLayout レイアウトまたはその RelativeLayout の親は役に立ちません

そうでないとき。たとえば、これは、線形レイアウトを相対レイアウト内にネストした場合に発生する可能性があります。相対レイアウトは、リニア レイアウトを必要な場所に正確に配置します。リニア レイアウトはスペースを占有します。どちらも私にとって無駄な使い方です。

于 2012-02-12T13:49:31.597 に答える
0

1)可能性があると書かれているので、結論を出すのは避けてください。若いパダワンを信じてください! しかし、はい、親も私には役に立たないように見えます:)

2)これがあなたが達成したい場合に備えて、リスト内の行のレイアウトを変更しないテーブルレイアウトを使用します。ListView

これを見たことがあるかもしれませんが、開発者ページには、適切なベースを作成するのに役立つ非常に優れたチュートリアルListViewが用意されています(この例では を使用していますListActivity)。TableLayout次に、 ...などを使用して行のレイアウトを変更できます。

于 2012-02-10T14:44:44.930 に答える