小编Chr*_*ris的帖子

Android force Fragment重建View

我有一个简单的应用程序有两个片段,当处于横向模式时,两个片段并排显示,并在纵向我显示片段A,然后如果他们选择一个选项,启动一个显示片段B的活动.我的问题是当我我处于纵向模式并显示片段B,如果用户选择了一个菜单选项,我想要刷新或重绘与片段B关联的视图,并且无法理解如何使其工作.我尝试了getView方法和getLayoutInflater方法,但屏幕没有改变,因为我认为我正在创建一个新视图.我还试图获得对Fragment A的引用,我认为我可以调用它的例程来构建一个新的片段并替换Fragment B但是因为它没有被显示而无法获得对它的引用.我真正需要做的是强制再次调用onCreateView方法来为新视图充气,但我尝试了几种方法来尝试这样做,但是无法再次调用onCreateView.有什么想法怎么样?

android view fragment layout-inflater

14
推荐指数
2
解决办法
3万
查看次数

以编程方式更改Android ActionBar中显示的徽标

有没有办法更改ActionBar内部显示的徽标Activity而不是在清单中列出?

我问的原因是我有一个手机的应用程序,我在顶部构建一个类似类型的栏,左侧的启动器图标类似于ActionBar使用ImageView.

我还允许用户将该图像更改为手机或互联网上的图像.我目前正在使应用程序适用于平板电脑,并希望只使用ActionBar相反,但无法弄清楚如何根据用户更改图像.ActionBar课堂上没有方法,我找不到从资源修改图标或徽标的方法.

有人知道这是可能的还是可以建议一些我可以尝试的东西?

icons android image tablet android-actionbar

5
推荐指数
2
解决办法
9740
查看次数

如何使用Android权限并使其对于没有该功能的设备可选

我有一个播放音频的应用程序.我最近添加了许可:

android.permission.READ_PHONE_STATE
Run Code Online (Sandbox Code Playgroud)

所以我可以告诉来电何时进来,这样我就可以在通话过程中静音.我还添加了许可:

android.permission.CALL_PHONE
Run Code Online (Sandbox Code Playgroud)

因此用户可以按图标来拨打电话号码.这些都是微小的变化,并不会影响大多数人使用该应用程序的方式.在我发布之后,我现在拥有的平板电脑没有手机功能的用户无法下载更新,而平板电脑的新用户不再在Play商店中看到它.

我阅读了几篇关于在清单中使用它而不是权限的帖子:

<uses-feature android:name="android.hardware.telephony" android:required="false">
Run Code Online (Sandbox Code Playgroud)

但是当我尝试在设备上测试应用程序时,我收到此错误:

Caused by: java.lang.SecurityException: Neither user 10022 nor current process has android.permission.READ_PHONE_STATE.
Run Code Online (Sandbox Code Playgroud)

有没有人对如何在不疏远所有非电话用户的情况下将这些次要功能添加到应用程序有任何建议?

permissions android telephony

0
推荐指数
1
解决办法
882
查看次数