我必须减少android中搜索视图的高度,我已经在XML文件中设置了大小,但它显示如下
如何减小光标的大小(此处的搜索提示未完全显示)。 我想将搜索视图中文本的大小设置为相同大小的“x”按钮
搜索视图XML如下
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingLeft="5dip" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="6dp"
android:text="@string/medium_text"
android:textAppearance="?android:attr/textAppearanceMedium" />
<LinearLayout
android:id="@+id/listView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/searchView"
android:orientation="horizontal"
android:weightSum="10" >
<SearchView
android:id="@+id/searchView"
android:layout_width="0dp"
android:layout_height="25dp"
android:layout_below="@+id/textView1"
android:layout_weight="9"
android:imeOptions="actionSearch"
android:textSize="2dp" >
</SearchView>
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_weight="0.5"
android:onClick="hierOnclick"
android:src="@drawable/ic_list" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_weight="0.5"
android:src="@drawable/icon_add_account" />
</LinearLayout>
....
......
........
</LinearLayout>
我无法将高度设置为wrap_content(请以其他方式建议)
编辑:感谢您的评论 我想创建一个搜索组件,如下所示
实现这一目标,我们计划在搜索视图中设置方形背景。但我无法调整搜索视图的高度。
请帮帮我
非常感谢
答案 0 :(得分:0)
问题在于EditText行距控制。 你应该设置:
在xml中:
android:lineSpacingExtra="0"
android:lineSpacingMultiplier="0"
或强>
代码: 使用以下方法:
public void setLineSpacing (float add, float mult)
答案 1 :(得分:0)
默认情况下,SearchView
使用abc_search_view.xml
作为布局文件。
abc_search_view.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/search_bar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<!-- This is actually used for the badge icon *or* the badge label (or neither) -->
<TextView
android:id="@+id/search_badge"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:layout_marginBottom="2dip"
android:drawablePadding="0dip"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="?android:attr/textColorPrimary"
android:visibility="gone" />
** Omitted for brevity **
根视图为R.id.search_bar
,可以在应用程序代码中对其进行引用和操作以调整搜索视图的高度:
searchView.findViewById<LinearLayout>(R.id.search_bar)?.run {
this.layoutParams = this.layoutParams.apply {
height = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 25f, resources.displayMetrics).toInt()
}
}
然后您可能需要将搜索栏居中:
searchView.gravity = Gravity.CENTER_VERTICAL