我在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
答案 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的方法)