将许多控件放置在矩形框(如Androd Studio中的框架)中

时间:2019-01-22 07:57:42

标签: android performance android-studio android-layout

我的应用程序中有两个“编辑”文本框和两个微调器。 对于有吸引力的应用程序设计,我想将这些控件放置在纯色矩形中。(就像在vb6中使用 frame控件 一样) 我提出了以下观点,但没有结果 请提出解决方案

我的应用中的观看代码

$models = Vehicle::join('vmodels', 'vmodels.vehicle_id', '=', 'vehicles.id')
    ->join('vehicletypes', 'vehicletypes.id', '=', 'vehicles.vehicletype_id')
    ->join('brands', 'brands.id', '=', 'vehicles.make')
    ->join('companies', 'brands.id', '=', 'companies.name')
    ->select('vehicles.slug as vslug', 'brands.name as brandname', 'vehicles.id as vid', 'vmodels.*', 'vehicletypes.name as vtype', 'companies.status as cstatus')
    ->where(function($query) use($term){
        $query->where('brands.name', 'LIKE', "%{$term}%")
            ->orWhere('vmodels.name', 'LIKE', "%{$term}%")
            ->orWhere('vmodels.year', 'LIKE', "%{$term}%")
            ->orWhere('vehicletypes.name', 'LIKE', "%{$term}%")
            ->orWhere('vehicles.model', 'LIKE', "%{$term}%");
    })
    ->where('companies.status', '=', 1 )
    ->where('vmodels.status', '=', 1)
    ->where('vehicles.status', '=', 1)
    ->paginate(30);

2 个答案:

答案 0 :(得分:0)

您必须按照如下要求使用可绘制形状

首先,在drawable文件夹中创建一个新的XML文件,并添加以上代码,然后将其另存为rectangle_shape.xml

 <?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/listview_background_shape">
    <stroke android:width="2dp" android:color="#ff207d94" />
    <padding android:left="2dp"
        android:top="2dp"
        android:right="2dp"
        android:bottom="2dp" />
    <corners android:radius="5dp" />
    <solid android:color="#ffffffff" />
</shape>

然后将其保存在layout文件中

您可以使用上述形状

<LinearLayout
    android:layout_width="match_parent"
    android:padding="10dp"
    android:layout_margin="10dp"
    android:orientation="vertical"
    android:background="@drawable/rectangle_shape"
    android:layout_height="wrap_content">
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    <Spinner
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
    <Spinner
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
</LinearLayout>

答案 1 :(得分:0)

我的代码在下面

   <?xml version="1.0" encoding="utf-8"?>
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape android:shape="rectangle">
        <solid android:color="#FF0000" />
    </shape>
 </item>
<item android:left="5dp" android:right="5dp"  android:top="5dp" >
    <shape android:shape="rectangle">
        <solid android:color="#000000" />
    </shape>
  </item>
 </layer-list>






<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="0dp"
android:layout_height="113dp"
android:layout_margin="10dp"
android:layout_marginStart="9dp"
android:layout_marginLeft="9dp"
android:layout_marginEnd="9dp"
android:layout_marginRight="9dp"
android:background="@drawable/rectangle_shape"
android:orientation="vertical"
android:padding="10dp"
android:visibility="visible"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<Spinner
    android:id="@+id/spinmain"
    android:layout_width="352dp"
    android:layout_height="25dp"
    android:layout_marginStart="16dp"
    android:layout_marginLeft="16dp"
    android:layout_marginTop="60dp"
    android:layout_marginBottom="416dp"
    android:dropDownVerticalOffset="35dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="@+id/view7" />
   </LinearLayout>

微调框在矩形中不可见。我想在矩形内显示微调框。