Articles of android fragments

在Fragment中显示确认对话框

我正在将我的Android应用程序转换为使用片段。 以前,我有一个活动,现在是一个片段。 因此,不能再使用此代码: showDialog(CONFIRM_ID); // … @Override public Dialog onCreateDialog(int id) { // Create the confirmation dialog… } 在Fragment对象中,我需要显示一个确认对话框,确认后会将我返回到对象以进行状态更新。 例如 里面片段X. 显示确认对话框。 如果“是”更新X的UI。 我怎么能做到这一点? 请提供工作示例代码。

将活动/片段的一部分保存为图像

我正在尝试保存部分活动,没有工具栏和状态栏。 我现在拥有的代码可以保存整个屏幕。 请参考下图。 我现在的代码: llIDCardRootView = (LinearLayout) view.findViewById(R.id.ll_id_card_root_view); llIDCardContainer = (LinearLayout) llIDCardRootView.findViewById(R.id.ll_id_card_view); private void createBitmap() { Log.d(Const.DEBUG, “Creating Bitmap”); Bitmap bmp; //View v = llIDCardContainer.getRootView(); //View v = activity.getWindow().getDecorView().findViewById(android.R.id.content); //View v = activity.findViewById(R.id.ll_id_card_root_view); ViewGroup v = (ViewGroup) ((ViewGroup) activity .findViewById(android.R.id.content)).getChildAt(0); v.setDrawingCacheEnabled(true); // v.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), // View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)); // v.layout(0, 0, v.getMeasuredWidth(), v.getMeasuredHeight()); // v.buildDrawingCache(true); bmp […]

在onBindViewHolder上点击cardview时如何将数据传递给片段?

这是我的适配器代码,我想将数据传递给“ParticularFragment” 注意:ParticularFragment扩展了Fragment public class TopicsAdapter extends RecyclerView.Adapter { private Context context; private ArrayList itemList; public TopicsAdapter(Context context, ArrayList itemList) { this.context = context; this.itemList = itemList; } @Override public TopicsAdapter.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) { View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.adapter_topics_recycler_view_items, viewGroup, false); ViewHolder viewHolder = new ViewHolder(v); return viewHolder; } @Override public void onBindViewHolder(final TopicsAdapter.ViewHolder viewHolder, […]

如何在android中交换不同布局的片段?

我正在开发一个使用片段的Android应用程序,它更像是一个主/细节forms。 我希望主要活动由左侧的列表片段组成,基于左侧选择的项目我想在右侧显示具有不同布局的片段。 (注意:右边的每个片段需要不同的布局/视图) 我遇到的所有示例都通过更改其中的某些值或交换/替换具有相同布局的新片段,在右侧仅使用一个公共片段。 如果有人可以对这个问题有所了解,那么它将对我有很大的帮助。 谢谢!

首次切换Android 5.0棒棒糖上的滑动菜单后,UI不会刷新

我有一个ResponsiveUIActivity ,它扩展了SlidingFragmentActivity 。 我的应用程序在Android 5.0版下完美运行。 但是当我第一次切换滑动菜单时,我的UI没有刷新,也没有可点击。 例如,我无法在第一次切换后滚动ListView或在EditText上写一些东西。 如果我切换滑动菜单,UI将刷新,我可以看到更改。 我怎么解决这个问题? ResponsiveUIActivity.java public class ResponsiveUIActivity extends SlidingFragmentActivity { private Fragment mContent; public static ResponsiveUIActivity rootActivity; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle(R.string.responsive_ui); setContentView(R.layout.responsive_content_frame); this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); rootActivity = this; // startNotificationService(); // check if the content frame contains the menu frame if (findViewById(R.id.menu_frame) == null) { setBehindContentView(R.layout.menu_frame); […]

从保存的实例恢复片段时,如何防止editText自动填充文本?

我有一个活动,它包含并显示多个片段。 当我重新输入片段时,它会自动填充所有editTexts中的文本。 所有字段的文本也相同。 例: 打开片段并在两个editTexts中填写文本: CustomEditText1:[______] CustomEditText2:[_ acb__] CustomEditText3:[_ qwe__] 单击后退按钮并重新输入片段 CustomEditText1:[_ qwe__] CustomEditText2:[_ qwe__] CustomEditText3:[_ qwe__] 这是我在片段中覆盖的方法: public AddBookingFragment() { // Required empty public constructor } @Override public void onAttach(Context context) { super.onAttach(context); tabsActivity = (TabsActivity) getActivity(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_add_booking, container, false); […]

在ZXing 2.0 QR码扫描后启动片段

如果我通过ZXing 2.0库执行QR码扫描,我在启动片段时遇到了一些问题。 我有这个例外: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { act=com.google.zxing.client.android.SCAN flg=0x80000 (has extras) }} to activity {fraiss.yucrowd/fraiss.yucrowd.activities.ScanQrCode}: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState* 当我执行此代码时: @Override public void onCreate(Bundle bundle) { // TODO Auto-generated method stub super.onCreate(bundle); setContentView(R.layout.scan_qr_code); Intent intent = new Intent(“com.google.zxing.client.android.SCAN”); intent.putExtra(“SCAN_MODE”, “QR_CODE_MODE”); startActivityForResult(intent, 0); } public void onActivityResult(int […]

多个活动或单个活动和多个片段

我有一个非常普遍的问题,我没有find我的问题的具体答案,因此再次提出。 我想在两种方法之间做出决定 针对各种屏幕和任务的专用活动,以避免复杂性和问题 用于不同任务的单个活动和多个片段以及用户可以像活动持有片段一样导航用户将导航到片段B,片段C,这可以来回交易。 我想知道什么? 活动转换是否对处理器来说代价高昂或实现简单的内存开销可以忽略不计? 片段有过渡管理生命周期的开销,那么生命循环器管理会带来什么问题呢? 处理片段事务与保存片段状态有多容易? 我们现在还不知道有多少数据存在片段。

使用CollapsingToolbarLayout时,Viewpager不显示

我一直在玩设计支持库,遇到了一个小问题,我希望有人可以帮助我。 我正在使用一个包含ImageView的CollapsingToolbar,它在parralax中折叠。 在CollapsingToolbar中,我还有一个TabLayout,它应该滚动我的ViewPager。 我的问题是ViewPager没有出现。 只有当我将ViewPager layout_height设置为match_parent或wrap_content时,才会出现此问题。 如果我将它设置为600dp,那么问题就消失了但是然后视图最终变成了一个固定的长度,这不是很好。 任何帮助都会受到赞赏! 这是我的XML

油煎面包块不时显示

我的应用程序中有官方导航抽屉。 单击抽屉中的项目将在屏幕的内容部分中打开新的片段。 每个Fragment包含具有相同id的FrameLayout ,用于显示Crouton。 基本用法是当用户单击Action Bar中的刷新按钮时显示无限的Crouton(通知正在进行的刷新)。 刷新完成后,会显示另一个烤面包片(替换旧的烤面包片)。 在某些情况下,即使在输入屏幕后也会显示Croutons(并在触发刷新时替换)。 我遇到的问题有点难以描述。 有些油煎面包块不时不显示。 它通常发生在我在屏幕之间切换时(当我在屏幕上第一次按下刷新按钮时未显示初始的Crouton或者没有显示Crouton – 但是,当刷新完成时以及之后按下刷新按钮时显示) 。 所以这是非常不可预测的。 甚至有些情况下,当我切换到另一个屏幕并返回时,屏幕根本不显示Crouton。 为了显示Croutons,我在每个Framgnet的布局中使用它: 在代码中我有CroutonBuilder类,有以下方法: public static Crouton getNewLastUpdateCrouton(Activity activity, boolean infinite, String plateNumber) { String lastUpdateString = …; Crouton newCrouton = Crouton.makeText(activity, lastUpdateString, CroutonBuilder.getLastUpdate(activity), R.id.crouton_view); if (infinite) { newCrouton.setConfiguration(new Configuration.Builder().setDuration( Configuration.DURATION_INFINITE).build()); } return newCrouton; } 然后在返回的Crouton上调用.show() 。 当我调试并逐步执行时,会调用show()方法,但有时只显示任何内容。 你有什么想法我做错了吗?