package info.androidhive.slidingmenu;
import java.lang.reflect.Field;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageButton;
public class HomeFragment extends Fragment {
public static HomeFragment newInstance()
{
return new HomeFragment();
}
public HomeFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState){
View rootView = inflater.inflate(R.layout.fragment_home, container, false);
ImageButton ib = (ImageButton) rootView.findViewById(R.id.buttonEnq);
ib.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
InfoFragment infoFragment = new InfoFragment();
/*FragmentManager fm = getFragmentManager();
fm.beginTransaction().replace(R.id.frame_container, infoFragment).commit();
*/
FragmentTransaction ft = getChildFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.abc_slide_out_bottom, 0);
ft.replace(R.id.frame_container,infoFragment);
ft.commit();
}
});
ViewPager viewPager = (ViewPager)rootView.findViewById(R.id.myfivepanelpager);
ImageAdapter adapter1 = new ImageAdapter(this.getActivity());
viewPager.setAdapter(adapter1);
return rootView;
}
@Override
public void onDetach(){
super.onDetach();
try{
Field childFragmentManager = Fragment.class.getDeclaredField("mChildFragmentManager");
childFragmentManager.setAccessible(true);
childFragmentManager.set(this,null);
}catch(NoSuchFieldException e){
throw new RuntimeException(e);
}catch (IllegalAccessException e) {
throw new RuntimeException(e);
}
}
}
你能告诉我我做错了什么吗?
FragmentTransaction ft = getChildFragmentManager().beginTransaction();
FragmentTransaction ft = getActivity().getFragmentManager().beginTransaction();
我一整天都被困在这个问题上,我似乎找不到一个适合我的情况的答案,足以让我使用。 当我单击一个列表项时,比如Blue,在Portraint中,我希望它显示一个新的片段,这是一个蓝色的屏幕,而在Sandwork中,它在半个屏幕上显示该片段,在另一个屏幕上显示listview。我正在使用ActionBarSherlock和碎片来完成这一点。 我从里到外构建了它,所以我从一个列表开始,它按照我想要的方式工
我刚开始学Android。我有一个活动类,我想把它重定向到导航栏的ViewPage中的一个片段?我尝试了很多方法,但都不奏效。我希望能帮上忙!!!我的代码:有一个mainactivity.java有一个ViewPager和BottomNavigationView ViewPageApdater类 和Activity类,但我遇到一个问题:java.lang.IllegalArgumentExcept
问题内容: 我正在尝试启动一个列表片段,但它似乎仅在平板电脑上运行。当我在手机上运行我的应用程序时,该应用程序崩溃了。有谁知道如何解决这个问题?代码如下。 错误 MainActivity.java activity_main.xml activity_main.xml(sw600dp) FragmentMainList.java 问题答案: 因为你有这条线 并且您没有任何布局具有与ID相同的ID
假设有两个Fragments,X和Y。我在X上添加Y片段。当Y完成它的工作,然后删除,X再次可见。 问题:当Y片段被删除并且X再次可见时,我必须执行一些任务,但不会调用,因为它取决于活动。那么我怎么知道片段是可见的呢?
如果包含一个与之匹配的值,则一切正常。 从返回 如果片段不存在,AbstractStandardFragmentInsertionTagProcessor#ComputeFragment似乎总是失败。 我对Thymeleaf很陌生,所以我可能错过了一些相当基本的东西。
问题内容: 我有一个活动,其中包含一个片段,在该片段中有一个按钮,当单击它时,会弹出一个对话框。 在此对话框中,有一个Viewpager,其中包含一些要显示的片段。 这是代码和错误,请您花宝贵的时间告诉我我哪里错了。非常感谢您的帮助。 MainActivity.class MyFragment.class PagerDialog.class 这是dialog.xml: 这是错误 问题答案: 我找到