1

Androidスタジオでアプリの構築を開始していますが、すぐに少し問題が発生しています。現在、私の番号ピッカーは XML プレビューで次のように表示されます。

プレビュー

しかし、(エミュレーターで) アプリを実行すると、次のようになります。

エミュレータ

プレビューには表示されませんが、アプリの実行時に表示されるテキスト ビューがあります。これが、エミュレータのスクリーンショットに「Time's up」というテキストが表示される理由です。私が疑問に思っているのは、番号ピッカーがテキストビューに非常に近く、左側にあるのはなぜですか? スタイルの変更は気にしません (実際には歓迎します) が、なぜ移動したのかわかりません。どんな助けでも大歓迎です!ここに私のXMLコードがあります:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.skytbest.intervaltrainer.MainActivity">

<TextView
    android:id="@+id/timer"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:paddingRight="10dip"
    android:paddinBottom="50dip"
    android:textSize="50dp"
 />

<Button
    android:id="@+id/button"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:text="Start"    />

<NumberPicker
    android:id="@+id/numberPicker"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignTop="@+id/timer"
    android:layout_toLeftOf="@+id/timer"
    android:paddingTop="50dp"   />

<NumberPicker
    android:id="@+id/numberPicker2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignTop="@+id/numberPicker"
    android:layout_toRightOf="@+id/numberPicker"
    android:paddingTop="50dp"   />


</RelativeLayout>
4

2 に答える 2

2

設定する必要がありsetMinValueますsetMaxValue。そうしないと、スタックが 0 になります。

于 2014-04-17T22:13:17.230 に答える
2

これは、私のコメントの提案を使用した作業レイアウトです。UI デザイナーがレイアウトをより適切に表示できるように、TextView にテキストを配置すると役立つことに注意してください。それでも、特にレイアウト制約の組み合わせが無効な場合は、画面に表示されるものと一致しないことがあります。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            tools:context="com.skytbest.intervaltrainer.MainActivity">
<TextView
        android:id="@+id/timer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentTop="true"
        android:text="Label"
        android:paddingBottom="50dp"
        android:paddingTop="50dp"
        android:textSize="50dp"
        />
<Button
        android:id="@+id/button"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:text="Start"/>

<LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_below="@id/timer">
    <NumberPicker
            android:id="@+id/numberPicker"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
    <NumberPicker
            android:id="@+id/numberPicker2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            />
</LinearLayout>

于 2014-04-01T03:40:36.910 に答える