Articles of 状态

Android保存checkbox状态在ListView与光标适配器

我不能find一种方法来保存使用光标适配器时的checkbox状态。 一切工作正常,但如果我点击一个checkbox,它被重复时,它被回收。 我见过使用arrays适配器的例子,但由于我缺乏经验,我发现很难将其翻译成使用游标适配器。 有人能给我一个如何去做的例子。 任何帮助赞赏。 private class PostImageAdapter extends CursorAdapter { private static final int s = 0; private int layout; Bitmap bm=null; private String PostNumber; TourDbAdapter mDbHelper; public PostImageAdapter (Context context, int layout, Cursor c, String[] from, int[] to, String Postid) { super(context, c); this.layout = layout; PostNumber = Postid; mDbHelper = new TourDbAdapter(context); […]

android – 存储在onPause,onStop或onSaveInstanceState中的数据

我有一个困惑,应该在onPause , onStop和onSaveInstanceState 。 例如,Android文档说,对于onPause – 提交未保存的更改,但只有当用户期望这些更改在他们离开时(例如电子邮件草稿)被永久保存。 对于onStop – 你应该使用onStop()来执行更大,更CPU密集的closures操作,比如将信息写入数据库。 对于onSaveInstanceState 您的活动可能会包含更多您想要恢复的状态信息,例如跟踪活动中用户进度的成员variables。 这三件事情不是基本上指向存储信息,如表单或电子邮件吗? 那么应该用哪种方法保存?

如何在Android中不保存视图状态?

我正在开发应用程序,我需要在ListView中显示build议,当方向更改时,我希望该列表隐藏。 但它仍然出现在屏幕上。 我试过这个:1)获取列表适配器并清除它。 2)在方向改变之前设置可见性GONE(但是在onCreate之后它再次变为可见)3)在onCreate中设置可见性GONE,但是列表仍然出现在屏幕上(我想也许android保存旧列表,因为我再次初始化列表视图,它看起来像空的,但在屏幕上的列表是不)。 那么,我该如何摆脱这个名单呢?

Android使用形状,select器或列表的不同状态的EditText背景

我开始一个新的应用程序,我使用ActionBarSherlock&HoloEverywhereLib。 我的min&target SDK是相同的(10 / 2.3.3)。 这只是我也可以使用他们的android运行时间快速移植到亚马逊Kindle和BB10(已经使用这个安装程序的另一个应用程序,它没有问题)。 应用应尽可能接近ICS / JB的外观。 不过,对于我的EditTexts,我给他们一个Girgerbread / iOS(圆angular,但没有阴影)看着他们 有人在几个星期前向我提到要抓姜饼的drawable,并把它们用于我的EditTexts。 但我开始使用另一个答案,我在这里发现在S / O,很简单: <EditText background:"@drawable/edittext_round_white" …./> &我的edittext_round_white.xml: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <corners android:radius="8dp"/> <stroke android:width="1dp" android:color="#444"/> <solid android:color="#FFFFFF" /> </shape> 现在,当我运行这个应用程序时,有两件事情是不对的 a)根本没有“重点”(我知道我需要实现这一点,这是问题的关键) b)光标在我的编辑文本中根本不出现(灰色垂直线暗示input指向edittext的位置) 对于a)我假设我必须使用某种select器或列表,对吧? 怎么样? 我是新来的样式在Android和任何帮助,将不胜感激。 我要改变的唯一的事情就是中风的颜色。 对于b)如何让光标显示出来? 任何提示/链接/等在这里都非常欢迎!

当活动停止时,Dagger 2保存并恢复状态

我陷入了僵局。 我使用Dagger 2进行dependency injection,但当应用程序进入后台时,我正在丢失状态。 这是情景:应用程序启动并创build依赖关系。 只要应用程序停留在前台,所有的工作都是完美的。 但是,有一种情况下,应用程序必须进入后台。 当它回来时,存储在我的一个注入类中的值将丢失。 对于我的注入类没有自己的依赖,一切似乎恢复正常。 但是,有一个注入类有一个注入依赖,这是不能恢复的类。 以下是我如何设置它: AppComponent.java @Singleton @Component( modules = { AppModule.class } ) public interface AppComponent { SessionKeyExchangerService provideSessionKeyExchangerService(); AESCipherService provideCipherService(); void inject(LoginActivity loginActivity); } AppModule.java @Module public class AppModule { @Provides @Singleton AESCipherService provideCipherService() { return new AESCipherService(); } @Provides @Singleton SessionKeyExchangerService provideSessionKeyExchangerService(AESCipherService service) { return new […]

如何正确实现DialogPreference子类的onRestoreInstanceState()?

我正在实现我自己的自定义DialogPreference子类有一个SeekBar用于持久整数。 我有点困惑需要进入onSaveInstanceState()和onRestoreInstanceState() 。 具体来说,是否需要在onRestoreInstanceState()更新用户与之交互的UI小部件(在我的例子中,SeekBar小部件onRestoreInstanceState() ? 我感到困惑的原因是这里的API doc文章告诉你这样做: @Override protected Parcelable onSaveInstanceState() { final Parcelable superState = super.onSaveInstanceState(); if (isPersistent()) { return superState; } final SavedState myState = new SavedState(superState); myState.value = mNewValue; //<———— saves mNewValue return myState; } @Override protected void onRestoreInstanceState(Parcelable state) { if (state == null || !state.getClass().equals(SavedState.class)) { super.onRestoreInstanceState(state); return; } SavedState […]

是否有可能创build一个自定义状态在StateListDrawable中使用?

他们有状态像压,聚焦,禁用,但是有可能创build自定义状态,以便它可以反映我自己的一些自定义标准? 例如,假设你有一个名字列表。 有些人属于某种类别,应该有不同的视觉performance。 这些人的行将有不同的状态和背景可绘制。

Android – 如何正确处理onPause / onResume方法?

我有一个应用程序,开始播放声音,并在onResume()方法开始/恢复游戏,但我注意到,如果我的应用程序是最后一次运行的应用程序,当我把手机待机(屏幕closures),我只需按菜单button来检查时间,然后手机开始播放游戏,并在后台发声(应用程序实际上不可见,只有屏幕上的date/时间是,但onResume必须已经在我的应用程序中调用)。 我在这里做什么? 有没有办法辨别什么是重新激活应用程序,然后添加一个条件语句,只有在应用程序实际可见时才启动游戏? 这里是我的onResume片段: @Override protected void onResume() { mySaveGame = Utilities.loadSavegame(this); //check the savegame if(mySaveGame!=null) { //start game using savegame values this.startFromSavedGame(mySaveGame.getIsLevelComplete()); } else { //run the 1st-run components this.startFirstRun(); } super.onResume(); } 我可以想到的唯一的办法是防止游戏在屏幕开启的时候启动(即使应用程序不可见),也是把this.finish()作为onPause()的最后一行。这迫使你重新启动应用程序,每次你想回到它,因为进动本身被杀害(这是好的,因为我的onPause保存持久的数据,但它不是一个优雅的解决scheme)。 请帮忙。

select器inheritance

有没有一种方法可以从Android中的已知selectorinheritance? 我想扩展一个EditText并添加一个自定义的状态,到目前为止我明白了使用onCreateDrawableState()方法。 当select器进场时,有一个简单的方法来使用默认的select器,只需添加我的而不是再次定义它们? <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res/com.my.package"> <item android:state_enabled="false" android:drawable="@drawable/login_textfield_bg_error" /> <item android:state_window_focused="false" android:drawable="@drawable/login_textfield_bg_error"> <item android:state_pressed="true" android:drawable="@drawable/login_textfield_bg_error" /> <item android:state_selected="true" android:drawable="@drawable/login_textfield_bg_error" /> <item app:errorBackground="@drawable/login_textfield_bg_error" /> </selector>

android:state_enabled缺失/不工作?

我没有任何控件的属性android:state_enabled。 手动键入也不起作用。 我只能使用弃用的android:enabled。 我有最新的一切。