Java Android-以编程方式操纵ListView下方的按钮位置
我目前想按照这个布局,但不知道如何控制下面的按钮。我的问题是,无论listview的宽度是多少,图像都会自动拉伸。我想按照下面的布局。我正在使用Android的后退按钮 我不太熟悉如何通过编程控制图像的位置及其默认大小。按钮位于Java Android-以编程方式操纵ListView下方的按钮位置,java,android,android-layout,listview,Java,Android,Android Layout,Listview,我目前想按照这个布局,但不知道如何控制下面的按钮。我的问题是,无论listview的宽度是多少,图像都会自动拉伸。我想按照下面的布局。我正在使用Android的后退按钮 我不太熟悉如何通过编程控制图像的位置及其默认大小。按钮位于addFooterView(btnLoadMore)内 加载主要组的活动 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.andr
addFooterView(btnLoadMore)内代码>
加载主要组的活动
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/white"
>
<!-- Main ListView
Always give id value as list(@android:id/list)
-->
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content"
>
</ListView>
<FrameLayout
android:id="@+id/contentFragment"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" />
</RelativeLayout>
为了防止图像拉伸,您可以创建一个线性布局
并将按钮放在其中。通过设置gravity
属性,可以将按钮定位在ListView
页脚的中间、左侧或右侧。将按钮添加到线性布局
后,可以将线性布局
添加到列表视图
页脚
查看以下代码是否为您提供了所需的布局:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.load_main_groups_activty, container, false);
// Getting listview from xml
ListView lv = (ListView) rootView.findViewById(android.R.id.list);
// Creating a button - Load More
Button btnLoadMore = new Button(mContext);
btnLoadMore.setBackgroundResource(R.drawable.navigation_back);
LinearLayout llFooter = new LinearLayout(mContext);
LinearLayout.LayoutParams paramsBtn = new
LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
paramsBtn.gravity = Gravity.LEFT;
llFooter.addView(btnLoadMore, paramsBtn);
//RelativeLayout.LayoutParams params2 = new
//RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,
//RelativeLayout.LayoutParams.MATCH_PARENT);
//llFooter.setLayoutParams(params2);
// Adding button to listview at footer
lv.addFooterView(llFooter);
return rootView;
}尝试实现以下目标:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/white"
>
<!-- Main ListView
Always give id value as list(@android:id/list)
-->
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content"
android:listSelector="@drawable/list_selector">
</ListView>
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:background="@null"
android:src="@drawable/navigation_back" />
</RelativeLayout>
我相信这会对你有帮助的。谢谢那么,您希望该按钮是页脚视图还是列表项?该按钮已在页脚视图中。我想要的是以编程方式将按钮放在屏幕的左下角,而不改变其原始大小。我还夸大了load\u main\u groups\u activty.xml Logcat错误:好的,更新了代码。让我们尝试不使用LayoutParams
集。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/white"
>
<!-- Main ListView
Always give id value as list(@android:id/list)
-->
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content"
android:listSelector="@drawable/list_selector">
</ListView>
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:background="@null"
android:src="@drawable/navigation_back" />
</RelativeLayout>