我的以下布局的问题是布局不滚动.我的要求是我必须显示2个有时可能很大的列表.所以我将ListViews放在ScrollView中,这样我就可以滚动到底部并查看ListViews.I don't want the ListView to scroll.我只希望我的ScrollView能够正常运行.有什么建议??
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ScrollView
android:id="@+id/scrollViewContactDetails"
android:layout_width="match_parent"
android:layout_height="fill_parent" android:fillViewport="true">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="22dp" />
<LinearLayout
android:id="@+id/numbersLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:orientation="vertical"
android:weightSum="1" >
<LinearLayout
android:id="@+id/numbersLayoutList"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical"
android:weightSum="1" >
<ListView
android:id="@+id/numbersList"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:dividerHeight="2dp" >
</ListView>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/emailLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="10dp"
android:orientation="horizontal"
android:weightSum="1" >
<LinearLayout
android:layout_width="120dp"
android:layout_height="match_parent"
android:layout_gravity="right|center"
android:gravity="top|right"
android:orientation="vertical" …Run Code Online (Sandbox Code Playgroud) android scroll android-layout android-listview android-scrollview
我有一个主要活动使用的LinearLayout,如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
tools:context=".MainActivity" >
<LinearLayout
android:id="@+id/activity_main_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我在activity_main_container中动态添加片段,但问题是,当我的片段高度大于屏幕高度时,底部的内容会被隐藏.我无法滚动或做任何事情.
我已经尝试在ScrollView中包装片段的布局,但它对我不起作用,因为我的片段中有listview.我也尝试在每个容器上设置布局高度为3000dp,但它也不起作用.
我动态添加的片段示例布局如下所示.我也在我的片段中动态添加内容.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/fragment_listing_detail_linearLayout_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FFF"
android:orientation="vertical"
android:paddingLeft="@dimen/fragment_padding_side"
android:paddingRight="@dimen/fragment_padding_side" >
<TextView
android:id="@+id/fragment_listing_detail_textview_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Review Title"
android:textSize="20sp"
android:textStyle="bold" />
<RatingBar
android:id="@+id/fragment_listing_detail_ratingbar_rating"
style="@style/customRatingBarSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numStars="5"
android:stepSize="0.5"
android:isIndicator="true" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Photos" />
<View style="@style/divider" />
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="10dp" >
<LinearLayout …Run Code Online (Sandbox Code Playgroud) 我正在尝试找到一种方法来根据子项的高度设置列表视图的高度.我按照这里给出的解决方案: 如何在不折叠的情况下将ListView放入ScrollView?
public void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
// pre-condition
return;
}
int totalHeight = 0;
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i, null, listView);
if(listItem != null){
listItem.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
listItem.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
//listItem.measure(0, 0);
totalHeight += listItem.getMeasuredHeight();
}
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
listView.setLayoutParams(params);
listView.requestLayout();
}
Run Code Online (Sandbox Code Playgroud)
现在我在listview上调用上面的函数,如下所示:
public void displayReviews(ArrayList<Reviews> resultReviews){
// Hide …Run Code Online (Sandbox Code Playgroud) 我在Android ListView内部使用ScrollView。因此,众所周知,它将发生高度问题。为此,我ListView使用以下代码设置大小:
public static void getListViewSize(ListView myListView, Context context) {
ListAdapter myListAdapter = myListView.getAdapter();
if (myListAdapter == null) {
return;
}
int totalHeight = 0;
for (int size = 0; size < myListAdapter.getCount(); size++) {
View listItem = myListAdapter.getView(size, null, myListView);
if (listItem instanceof ViewGroup)
listItem.setLayoutParams(new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT));
WindowManager wm = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
@SuppressWarnings("deprecation")
int screenWidth = display.getWidth();
int listViewWidth = screenWidth - 65;
int widthSpec = MeasureSpec.makeMeasureSpec(listViewWidth,
MeasureSpec.AT_MOST); …Run Code Online (Sandbox Code Playgroud) 我想在使用actionbarsherlock lib实现的Navigationdrawer中的片段中使用listview.问题是listView高度没有缩放到match_parent.它被扩展到listview的一项.我搜索了很多,尝试了类似的问题,并尝试将父布局更改为Relative_layout,Linear_layout和Frame_layout.我没有得到我做错的事.如何缩放listView以获取布局的其余大小.
这就是它在编辑器中的样子

这就是它在应用程序中的外观.listView的大小缩放为一个项目.对于更多项目,我必须滚动该空间.

我的主要片段布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/body_background_green"
android:orientation="vertical"
android:padding="5dp" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:text="@string/farmerlist"
android:textAppearance="?android:attr/textAppearanceLarge" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/farmercode" />
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="@string/farmercode"
android:inputType="number" >
<requestFocus />
</AutoCompleteTextView>
</LinearLayout>
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/transparent"
android:dividerHeight="2dp" >
</ListView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这是项目布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:id="@+id/ll1"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Code : " …Run Code Online (Sandbox Code Playgroud) 我有一个listview内部scrollview,但问题scrollview是滚动但listview不滚动.我认为这是由于这个原因scrollView.
有工作解决方案的人可以在这里作为参考发布吗?
我有一个自定义列表视图,可以重新排列(拖放),显然可滚动.我需要添加一个带有listview的自定义标题,该标题应该与列表一起滚动.
我尝试使用自定义标题布局"listView.addHeaderView(header)".但是在列表重新安排期间标题变得混乱.所以我不想使用addHeaderView(...).
我还尝试在ScrollView中放置我的活动布局(LinearLayout)并按照此处的建议展开列表 - 如何将ListView放入ScrollView而不会折叠?.但是,滚动似乎很慢,ScrollView在列表项重新排列中产生问题.
那么有没有其他方法来实现这种效果?我更喜欢布局中的一些解决方案.
我在Android UI方面相当缺乏经验.提前致谢.
我想要一个可滚动的列表,其中还包括列表视图.我到处做研究,还没有解决方案:(根据下面的代码,当我添加ScrollView时,listview高度变得更小(单行).我希望ListView高度是动态的(基于内容)并且还可以完成页面可滚动.我如何实现这一目标?或者有没有办法创建动态线性/相对列表UI?请提示.
XML代码:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="@dimen/activity_horizontal_margin"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin">
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/kollege_name"
android:width="170dp" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:gravity="right"
android:text="@string/grade_value"
android:width="120dp" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/textView2"
android:layout_below="@+id/textView2"
android:text="@string/code_value" />
</RelativeLayout>
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="@android:color/darker_gray" />
<TextView
android:id="@+id/textView4"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/your_fit"
android:textSize="12sp" />
<ListView
android:id="@+id/listview"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="@android:color/darker_gray" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin" …Run Code Online (Sandbox Code Playgroud) android listview scrollview relativelayout android-linearlayout
我想用一种ListView里面的东西ScrollView.该列表具有可变长度,始终可以添加/删除项目.是否有一种简单的方法来修改默认值Android ListView,我是否必须创建自定义ListView?