Android Studio - 布局问题

时间:2015-10-03 13:56:38

标签: android xml android-layout

我有以下android布局,它已被拆分为多个相对布局。到目前为止,我已经可以调整为不为视图添加固定尺寸但是我现在已经卡住了

正如您在下面的屏幕截图中看到的,我在一行上有一个微调器,一个微调器和一个编辑文本,此刻只重复了4次,以便了解我想要实现的目标,但总的来说会有8

为了说明我的需要,我必须放入固定的尺寸,但是只要我将微调器放到上下文中它就会占用屏幕的整个宽度

我的XML如下;

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="2.27"
    >


    <Spinner
        android:layout_width="100dp"
        android:layout_height="30dp"
        android:id="@+id/spinner"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:spinnerMode="dropdown" />

    <Spinner
        android:layout_width="220dp"
        android:layout_height="wrap_content"
        android:id="@+id/spinner2"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/spinner"
        android:layout_toEndOf="@+id/spinner"
        android:layout_alignBottom="@+id/spinner"
        android:spinnerMode="dropdown" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="number"
        android:ems="10"
        android:id="@+id/editText"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/spinner2"
        android:layout_toEndOf="@+id/spinner2"
        android:layout_alignBottom="@+id/spinner2"
        android:textSize="10sp" />
</RelativeLayout>

有谁知道如何以正确的方式设置它?

Screenshot

3 个答案:

答案 0 :(得分:2)

尝试使用具有所需重量的LinearLayout ..它应该可以解决您的问题

答案 1 :(得分:0)

请试试这个

#include <cstdlib>
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

/*
 * 
 */
int main(int argc, char** argv) {

    double meal_one;
    double tip;
    double tip_dol;
    double total_meal;
    double calc_tip;
    double expen;


    while(meal_one>=0)
        {
            cout << "Enter cost of meal: $";
                cin >>meal_one;

    if(meal_one>=0)
        {
            cout <<"Enter tip percentage: ";
            cin>>tip;cout<<"percent"<<endl;
                tip_dol=(tip/100)*meal_one;
            cout << fixed <<setprecision(2)<< "Calculated Tip = $"<< tip_dol<<endl;
                expen=meal_one+tip_dol;
            cout<< fixed <<setprecision(2)<<"Total expenditure = $"<< expen << endl;
            cout<<endl;
        }
    else{
            cout << "Thank you for visiting the Zatoichi Sushi Hut!"<<endl;
        }
        }
    return 0;
}

答案 2 :(得分:0)

LinearLayoutlayout_weight

一起使用
<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="2.27>

<Spinner
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="wrap_content"
    android:id="@+id/spinner"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:spinnerMode="dropdown" />

<Spinner
    android:layout_width="0dp"
    android:layout_weight="2"
    android:layout_height="wrap_content"
    android:id="@+id/spinner2"
    android:layout_alignParentTop="true"
    android:layout_toRightOf="@+id/spinner"
    android:layout_toEndOf="@+id/spinner"
    android:layout_alignBottom="@+id/spinner"
    android:spinnerMode="dropdown" />

<EditText
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="wrap_content"
    android:inputType="number"
    android:ems="10"
    android:id="@+id/editText"
    android:layout_alignParentTop="true"
    android:layout_toRightOf="@+id/spinner2"
    android:layout_toEndOf="@+id/spinner2"
    android:layout_alignBottom="@+id/spinner2"
    android:textSize="10sp" />

</LinearLayout>