0

現在、電話、メール、または同様の記号などのアイコンの列を含む連絡先情報のテーブルを設計しようとしていますが、次の列のテキストに合わせたいと考えています。

icon | Telephone:
     | +1212354567
icon | Email:
     | x@y.com

機能的にAndroidのRelativeLayoutと比較できるレイアウトはありますか?グリッドレイアウトで作業しようとしましたが、これはエラーが発生しやすく、十分に正確ではないようです。レイアウトを列と行に分割したくはありません。代わりに、RelativeLayoutで使用される位置(toLeft、toRight、AlignParentBottomなど)を記述したいと思います。

StackPanelはLinearLayoutと比較できますが、現在の設計には適していないため、避けたいと思います。

オリエンテーションできるWindowsPhoneとAndroidのレイアウトの比較はありますか?これは不完全であり、RelativeLayoutに関するアドバイスを提供しません。

4

2 に答える 2

2

グリッドを使いたくないとおっしゃっていたのは知っていますが、この場合は使わなければならないと思います。

ただし、グリッドパネルとスタックパネルの両方で構造化します。

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition />
    </Grid.RowDefinitions>

    <!-- Image for first row item -->
    <Image Grid.Column="0" Grid.Row="0" Source="icon-url" />
    <!-- Container for the details of the first row item -->
    <StackPanel Grid.Column="1" Grid.Row="0">
        <TextBlock Text="Telephone:" />
        <TextBlock Text="+1212354567" />
    </StackPanel>

    <!-- Image for second row item -->
    <Image Grid.Column="0" Grid.Row="1" Source="icon-url" />
    <!-- Container for the details of the second row item -->
    <StackPanel Grid.Column="1" Grid.Row="1">
        <TextBlock Text="Email:" />
        <TextBlock Text="x@y.com" />
    </StackPanel>

    <!-- Just add rows to the grid to continue the list -->
</Grid>
于 2012-12-11T15:04:31.073 に答える
1

比較するパネルはありませんが、冒険心のある人が作成することができます。これを行う方法については多くの記事がありますが、ここに参照用の記事があります。http://www.switchonthecode.com/tutorials/wpf-tutorial-creating-a-custom-panel-control

そうは言っても、あなたがやろうとしていることにグリッドを使わない理由はありません。「エラーが発生しやすい」または「十分に正確ではない」というわけではありません。ただし、SharedSizeGroupはここで友達になるはずです。

于 2012-12-12T15:02:05.300 に答える