android - LinearLayout 不均匀地改变微调器的高度
问题描述
我在我的项目中使用微调器,并从数据库上传您的信息。到目前为止一切都很好,然而,在执行过程中,微调器的高度总是大于其他组件的高度。我在堆栈上查找了几种关于如何平均分配组件的情况,但是我的微调器很顽固,在我看来还有其他问题。
这是我的布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginStart="5dp"
android:layout_marginTop="5dp"
android:layout_marginEnd="5dp"
android:layout_marginBottom="5dp"
android:orientation="vertical">
<TextView
android:id="@+id/textView4"
style="?android:textAppearanceSmall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:text="@string/activity_registervalues_message" />
<EditText
android:id="@+id/textview_valuespoint_pointname"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autofillHints=""
android:hint="@string/activity_registervalues_textview_point"
android:inputType="textPersonName"></EditText>
<Spinner
android:id="@+id/spinner_valuespoint"
style="?android:spinnerItemStyle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"></Spinner>
<EditText
android:id="@+id/textview_valuespoint_pointvalue"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autofillHints=""
android:hint="@string/activity_registervalues_textview_value"
android:inputType="none|numberDecimal"></EditText>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<Button
android:id="@+id/button_valuespoint_novo"
style="?android:textAppearanceSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/activity_registervalues_button_novo"></Button>
<Button
android:id="@+id/button_valuespoint_save"
style="?android:textAppearanceSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/activity_registervalues_button_salvar"></Button>
<Button
android:id="@+id/button_valuespoint_close"
style="?android:textAppearanceSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/activity_registervalues_button_fechar" />
</LinearLayout>
<ListView
android:id="@+id/listview_valuespoint"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</ListView>
</LinearLayout>
样式.xml
<resources>
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="textAppearanceFinish">@style/TextAppearanceFinish</item>
</style>
<style name="WizardTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<item name="textAppearanceFinish">@style/TextAppearanceFinish</item>
</style>
<style name="TextAppearanceFinish" parent="android:TextAppearance.Holo.Medium">
<item name="android:textColor">#fff</item>
</style>
</resources>
在java类中,我有适配器
public ArrayAdapter createArrayAdapter() {
ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
android.R.layout.simple_spinner_dropdown_item,
getSelectedAttributeList());
return spinnerArrayAdapter;
}
为什么微调器的高度会发生变化?
编辑:屏幕
项目时的屏幕
执行中的画面
如您所见,在项目时间中空间是均等的,但在执行时间中可能会看到差异
解决方案
问题出在 createArrayAdapter 中。我应该使用simple_spinner_item
所以:
public ArrayAdapter createArrayAdapter() {
ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
android.R.layout.simple_spinner_item,
getSelectedAttributeList());
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
return spinnerArrayAdapter;
}
推荐阅读
- regex - 查找并替换字符串值后的所有数字并递增每个数字
- ruby - 为什么我的 jekyll 命令不再起作用?
- python - 两个 QListView 框,一个显示文件夹中的文件,一个显示第一个 QListview 中的选定文件
- ssis - SSIS,平面文件连接页眉,不同列宽的页脚
- database - 夏令时更改的 generate_series - 不同的结果取决于服务器时区
- asp.net - 我需要在连接表中设置主键吗?MVC 多对多关系
- visual-studio-code - 如何从 VSCode 运行 Junit Test (Java)
- powershell - 用于克隆模板文件夹的脚本保留权限并提示输入新文件夹名称
- assembly - PREFETCH 和 PREFETCHNTA 指令的区别
- angular - Angular 2 innerHTML 不适用于 slice 或 textarea