我在使用ActionBar.TabListener在Fragments中实现滑动视图时遇到问题,我通过Google搜索找到了解决方案...现在我坚持要更换每个标签中的片段..
我的每个标签都包含片段,每个片段中我都有一个带有setONclickListener的Button,它应该替换另一个片段
我在上一个问题中提到了我在代码中使用的MainActivity和FragmentPagerAdapter类,该链接如下所示。
How Can i Implementing Swipe View in ActionTab and Fragments within Multiple Fragments?
现在在每个片段中我使用了带有xml布局ID的FragmentTransaction,但它与旧片段重叠......
我还使用了main.xml视图寻呼机ID,但这也没有用..
FragmentTab1是......
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.LinearLayout;
public class FragmentTab1 extends Fragment {
Button A, B;
LinearLayout rl;
public FragmentTab1 () {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View rootView = inflater.inflate(R.layout.e_layout, container, false);
A=(Button)rootView.findViewById(R.id.intra);
B=(Button)rootView.findViewById(R.id.del);
rl= (LinearLayout)rootView.findViewById(R.id.ie1);
A.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentTab1A i= new FragmentTab1A ();
FragmentManager fm= getFragmentManager();
FragmentTransaction ft= fm.beginTransaction();
ft.replace(R.id.ie1, i);
ft.remove(Equity.this);
/*
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.addToBackStack(null);*/
ft.commit();
}
});
Del.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentTab1B d= new FragmentTab1B ();
FragmentManager fm= getFragmentManager();
FragmentTransaction ft= fm.beginTransaction();
ft.replace(R.id.ie1, d);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.addToBackStack(null);
ft.commit();
}
});
return rootView;
}
}
FragmentTab1.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/ie1"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Intra Day"
android:id="@+id/intra"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Del"
android:id="@+id/del"
/>
</LinearLayout>
</ScrollView>
如上面在FragmentTab1中给出的那样,我使用了FragmentTab1.xml的“LinearLayout id”替换了A和B按钮
我也尝试使用activity_main.xml
中的viewpager的id请分享解决方案..
感谢。