如何在Fragment

时间:2016-11-12 11:22:57

标签: android android-layout listview android-fragments twitter

我在List Fragment中实现了Twitter SDK。它像twitter一样无限滚动。但是,当我尝试在scrollview layout中添加此片段时,它会停用scrollview的{​​{1}}。

twitter fragment

布局

public class TwitterFragment extends ListFragment {
    public static TwitterFragment newInstance() {
        return new TwitterFragment();
    }

现在我想在另一个活动中添加此片段。 <TextView android:id="@id/android:empty" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="No Tweets" /> <ListView android:id="@id/android:list" android:layout_width="match_parent" android:layout_height="0dp" android:layout_marginTop="50dp" android:layout_weight="1" android:divider="#e1e8ed" android:dividerHeight="1dp" android:drawSelectorOnTop="false" /> </LinearLayout> 已经有滚动视图。当我在那里添加这个片段时,twitter片段的滚动消失了。我尝试了各种方法,但未能达到目标。

我也需要在小片段中使用相同的无限滚动。

这是我的MainActivity代码。

MainActivity

1 个答案:

答案 0 :(得分:2)

你可以在包裹整个布局的ScrollView中添加fragment_layout.xml ScrollView 通常有一个子节点,在这种情况下是{{1}中定义的整个布局}})。然后,布局inflater正常生成fragment_layout.xml

fragment.java:

View

在以下带有 ScrollView View view = inflater.inflate(R.layout.fragment_layout, container, false); return view; 示例中 ScrollView 包装了一个包含两个TextView的fragment_layout.xml

fragment_layout.xml:

ConstraintLayout

使用此方法时,<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scrollView" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true"> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.ralf.gpstelephony.TelephonyManagerFragment"> <TextView android:id="@+id/TextView_1" android:layout_width="match_parent" android:layout_height="600dp" android:text="@string/string1" app:layout_constraintTop_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" android:layout_marginTop="10dp" android:layout_marginLeft="10dp" /> <TextView android:id="@+id/TextView_2" android:layout_width="match_parent" android:layout_height="600dp" android:text="@string/string2" app:layout_constraintTop_toBottomOf="@id/TextView1" app:layout_constraintLeft_toLeftOf="@id/TextView1" android:layout_marginTop="10dp" android:layout_marginLeft="0dp" /> </android.support.constraint.ConstraintLayout> </ScrollView> 执行所有工作,不必在LayoutInflater中创建 ScrollView 的实例(基于xml的方法)