Articles of android fragments

如何从片段动态创建的活动中调用片段内的方法

我正在创建没有xml文件的动态片段现在我想从父活动中调用fragement中的方法,所以我怎么能这样做可以让任何人知道它,我发现很多问题,但他们正在使用xml Fragmentactivity public class HomeActivity extends FragmentActivity implements OnClickListener { public static final String TAG = HomeActivity.class.getSimpleName(); PageIndicator mIndicator; //Spinner spinner1; ImageView serversetting,dropdown; TextView selectrange; int num,counter=0; String url,apiUser,apipass,TestAccount; /* public static HomeActivity newInstance() { return new HomeActivity(); }*/ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.fragment_parent); ViewPager mViewPager = (ViewPager) findViewById(R.id.viewpager); selectrange=(TextView)findViewById(R.id.selectrange); serversetting=(ImageView)findViewById(R.id.settingsserver); dropdown=(ImageView)findViewById(R.id.dropdown); […]

如何在Fragment上调用getBaseContext()

我有这个方法,可以从正常活动调用: getBaseContext().getResources().updateConfiguration(config2, getBaseContext().getResources().getDisplayMetrics()); 问题是我不能在Fragment中调用getBaseContext() ,我怎么能这样做? 或者我需要从Fragment类中替换getBaseContext() ?

防止Android软键盘在片段中向上移动视图?

我有一个带有四个选项卡的活动,每个选项卡都实现为一个片段。 在其中一个选项卡中,我想阻止软键盘向上推视图,而键盘仍然应该将视图推到其他片段中。 有谁知道如何实现这个目标? 我无法使用activity的windowSoftInputMode标志,因为这会阻止整个活动使用所有四个片段。

使用FragmentStatePagerAdapter时刷新片段视图

似乎之前讨论过刷新问题,但没有一个解决方案适合我。 我想要做的是:我正在使用FragmentStatePagerAdapter。 适配器的每个位置都包含一个片段,该片段具有象状外观的线性布局,每个单元格由CheckedTextView表示。 并且应该监听点击并且删除单元格上的先前选择并进行新选择的监听器。 什么工作:每个片段都正确加载所有数据/默认状态(片段加载到列表中时计算) 当我单击一个单元格时,保存的单元格列表中的所有状态都被正确获取,我可以在调试时更改代码中的状态更改。 同时我为CheckedTextView指定一个表示单元格的新状态。 这设置如下: CheckedTextView cellView = (CheckedTextView) GridRow.getChildAt(c); cellView.setSelected(false); cellView.setChecked(false); cellView.setTag(cellsChess.get(i).get(c)); 问题:即使正确存储和分配了值,也无法刷新视图,视图中单元格的值不会更新。 我试过的提示没有用: 1。调用adapter.notifyDataSetChanged:只有在我们被覆盖时才能使用FragmentStatePagerAdapter调用: @Override public int getItemPosition(Object object){ return POSITION_NONE; } 2.为DestroyItem添加Overriden方法,并将片段添加到getItem上的Map: 这是不合适的,因为我正在使用FragmentStatePagerAdapter,因此使用此pagerAdapter的整个目的将消失。 3.调用invalidate:这不适合这种情况,我需要实时刷新。 4. instantiateItem()中的setTag()方法:我不认为这种情况适合。 引用的线程: 在恢复活动时刷新FragmentStatePagerAdapter上的图像 ViewPager PagerAdapter未更新视图 动态更新ViewPager? notifyDataSetChanged无法更新ListView 我试图尽可能清楚地说明我的问题,如果有人需要更多澄清,请问。 紧急回复将受到高度赞赏, 干杯 ****更新***** 我使用的是ViewPagerIndicator,而不是默认的ViewPager。

Android – Viewpager和片段,方法不起作用

我有一个带有两个Fragments的ViewPager ,我在FragmentActivity onCreate中实例化。 private List fragments = new Vector(); fragments.add(Fragment.instantiate(this,Frag_1.class.getName())); fragments.add(Fragment.instantiate(this,Frag_2.class.getName())); this.vPagerAdapter = new Adapt(super.getSupportFragmentManager(),fragments); vPager = (ViewPager) super.findViewById(R.id.pager); vPager.setAdapter(vPagerAdapter); 我的第二个Fragment里面有一个方法,我调用它来更新我的ListView – refreshList() : public class Frag_2 extends Fragment { private ListView list; private ArrayList data; private boolean firstCreation=true; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.setRetainInstance(false); } public void onAttach(Activity activity) { // TODO Auto-generated […]

在某些片段可见时启用显示方向更改,在其他片段时禁用

我在我的应用程序中使用片段。 大多数碎片应该只有一个方向 – 肖像。 所以我强迫持有人活动始终处于纵向模式。 但我的一个片段应该同时具有纵向和横向模式。 如何只为一个片段启用方向更改? 或者我需要将它作为一个单独的活动来处理方向而不依赖于其他片段?

Expandablelistview扩展simplecursoradapter以从sqlite填充

如何在片段内实现android SQLite,而不是将其扩展到除片段之外的任何其他内容,同时将这些条目放在可扩展listview的子代中。 这是我实施的: http : //wptrafficanalyzer.in/blog/implementing-horizo​​ntal-view-swiping-using-viewpager-and-fragmentpageradapter-in-android/ 我正在我的主要活动中实现视图寻呼机,因此我必须在其中做我必须做的事情。 我不知道如何使用SQLite与片段和自定义Expandablelist适配器请帮助我。 在这里,我基本上将用户名和年龄作为用户条目,我希望在expandablelistview的子项中显示。 因此,日期表的问题无法打开参加活动的活动,即活动2 更新:: SQLiteAdapter: public class SQLiteDBAdapter { private static final String TAG = “DBAdapter”; //used for logging database version changes // DataBase info: public static final String DATABASE_NAME = “entry”; public static final String DATABASE_TABLE2 = “entryTable”; public static final String DATABASE_TABLE1= “dateTable”; public static final […]

片段在后台

在我的应用程序中我的第一个Fragment是在BackStack中,并且在交易时该片段没有添加到backstack。 编辑。 我在第一次横切后多次使用相同的碎片,但是横切后跟第一个碎片被添加到带有addToBackStack(TAG); 但我从来没有添加第一个片段到backstack但仍然我不明白为什么我必须点击两次将应用程序发送到后台。 这是代码 FragmentManager fm = getSupportFragmentManager(); Bundle args = new Bundle(); args.putString(“url”, Constants.URL_BASE); feedFragment.setArguments(args); fm.beginTransaction().replace(R.id.content_frame, feedFragment).commit(); 现在,当我按下后退按钮时,它会移除片段,但应用程序不会转到后台。 当我第二次按下后退按钮时,它会进入后台。 replace()本身是否将片段添加到backstack? 如果是的话那我怎么能删除片段并让我的应用程序转到后台onBackPressed ? 如果它没有将片段添加到backstack那么为什么会发生这种情况呢? 我该如何让它正常工作? 谢谢! 编辑: 这是完整的活动代码。 public class MainActivity extends AppCompatActivity { private final String TAG = getClass().getName(); private DrawerLayout drawerLayout; private FeedFragment feedFragment = new FeedFragment(); private ListView listView; private LinearLayout […]

白色背景时animation片段在android中

我试图在Android中的片段中滑动。 过渡和滑动按预期工作,它会在我想要的位置滑动。 但是,在视图到位之前,有一个白色背景,视图将位于其最终位置。 它就像为它分配了空间。 但是我想让它滑过我当前的视图,所以没有显示白色背景。 有什么想法吗? 我在res / anim中使用带有xml文件的view animator。 这是一个小代码: android.support.v4.app.FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction(); fragmentTransaction.setCustomAnimations(R.anim.slide_in_down, 0); fragmentTransaction.show(fragmentToSlideIn); fragmentTransaction.commit(); 那么,为什么视图的最终位置在到达该位置之前会有白色背景?

如何在android Fragement中设置自定义ListView?

我一直在为Android平板电脑做应用程序。 在这里,我需要显示两个ListView。 一个用于简单列表视图,一个用于自定义列表视图。 一旦我点击简单的列表视图行,那么必须在另一个自定义列表视图中显示该详细信息。 为此,我被拍成片段以在单个屏幕中显示两个列表视图。 对于Custom ListView,我使用自定义适配器来绑定自定义数据。 但是当我点击简单的列表视图行时,应用程序显示没有响应错误。 我的代码就像这样。 因为我的片段包含这样的代码 public class listDetails extends Fragment{ private int nAndroids; public static ArrayList<HashMap> menuItems = new ArrayList<HashMap>(); ListDetailsAdapter adapter; static final String KEY_Title = “title”;//”item”; public listDetails() { } /** * Constructor for being created explicitly */ public listDetails(int nAndroids) { this.nAndroids = nAndroids; } /** * […]