Articles of android activity

在Fragment的onActivityCreated()之前调用onStart()的活动

我遇到了一个问题,我的片段的onActivityCreated()方法是在调用我的activity的onStart()方法之后调用的。 这似乎意味着我的活动onCreate()方法在onStart()之后完成? 那不可能是这样的……可以吗? 在我的活动的生命周期中,我的片段的onActivityCreated()被称为? 此外,如果我有多个片段,我如何控制片段的onActivityCreated()调用的顺序? 在我的活动中: @Override protected void onStart() { super.onStart(); methodA(); // this is called … } 在我的片段中: @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); methodB(); // … before this }

Android – 在animation期间保持活动

我想在Android中从一个Activity创建一个animation过渡到下一个Activity。 但是在animation期间,黑色背景会短暂停电,然后显示我想要显示的下一个活动的animation。 我想保持第一个Activity保持不变,以便第二个Activityanimation并重叠第一个Activity。 我怎样才能实现这种行为? 这是我当前的两个animationxml文件,它们没有做我想要实现的目标: hold.xml enter.xml 我的Java代码: starter.overridePendingTransition(R.anim.enter, R.anim.hold); 帕特,提前谢谢你

如何在Android上显示当前可见活动的对话框?

我的问题类似于这个2岁的问题 ,我只是发布相同的问题来获得更新的答案,因为很多事情在两年后发生了变化。 我正在开发一个GingerBread +设备的应用程序,我有很多活动,在后台我从服务器收到一些数据。 现在基于该数据在某些情况下我需要向用户显示一个Dialog 。 问题是我怎么知道当前最活跃的是哪个? 我尝试了什么,我尝试在创建Dialog提供getApplicationContext() ,但这不起作用。 抛出一些例外。 一个办法 ? (我真的讨厌它),解决方案可能是通过在Application类中使用variables并在每个活动的onResume()上设置它来跟踪当前可见的活动。 如果他们有更聪明的方法来实现这一点,我真的不想做这本书,我相信他们是更明智的方法来实现这一目标, 我的简单问题是, 如何在当前可见活动上显示对话框? ,所以我可以提供对AlertDialog.Builder的引用,我认为这将完成我的工作。如果不是我怎么能在最顶层的Activity上显示一个对话框? 编辑,我创建一个简单的对话框使用以下代码私有View.OnClickListener cancelClickListener = new OnClickListener(){ @Override public void onClick(View v) { AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder( LoginActivity.this); // set title alertDialogBuilder.setTitle(“Roobroo will exit..”); // set dialog message alertDialogBuilder .setMessage(“Are you sure you want to exit ?”) .setCancelable(false) .setPositiveButton(“Yes”, […]

Android:在一个活动上为操作栏添加样式

我想从styles.xml中添加一个样式 @color/blue #FFFFFF 到我的Actionbar,但只是在活动BlueActivity(它仍然是空白)。 怎么做? 我卡住了:’( 编辑:为什么要添加 android:actionBarStyle=”@style/BlueActionBar” 到Manifest中的BlueActivity不起作用?

如何检查活动是否可见? onResume是不够的

我的一项活动是嵌入VideoView来播放一些内容。 我分别在onPause()和onResume()实现了暂停/恢复video,但令我惊讶的是,在活动对用户真正可见之前调用onResume 。 确切地说,方案如下: 活动在屏幕上,video正在播放 用户使用电源按钮锁定手机 activity调用onPause() ,video停止 用户按下电源按钮 在用户解锁屏幕之前, activity onResume()调用(从而恢复video) 我用Android 2.2,2.3和4.0确认了这个行为。 我想它是故意这样做的,让活动准备在锁定屏幕消失后立即重绘。 如何检测活动实际出现在用户身上的时刻? 我试图等待onWindowFocusChanged(true)被调用,它似乎工作,但它并没有让我觉得非常安全。

这是Android 4.0中的新实现吗?

我在android 4.0.3(冰淇淋三明治)中开发了一个应用程序,我正在使用两个活动来测试活动导航。但是我在活动导航中观察到了不同的行为。 我从活动A调用活动B.在活动B中,我只是调用finish()方法。 这样我们就可以看到Previous Activity A.它完全按预期工作,但问题是后退导航(调用完成方法或按后退键),它调用onCreate()方法的Activity A而不是调用onResume( )。 但在以前的版本中,它的表现并不像这样。 这是android 4.0中的新实现吗? 以下是我实施的示例: Activity_A: public class Activity_A extends Activity { /** Called when the activity is first created. */ static int count=0; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView text=(TextView)findViewById(R.id.textcontent); text.setText(“Activity 1 called:”+(++count)+” Times”); } public void onClick(View v) { Intent intent=new Intent(this,Activity2.class); startActivityForResult(intent, […]

什么是更好的方法,将适配器保持为活动的内部类别或外部?

我想检查使用适配器的ListView程序的更好和更快的方法。 它出来还是活动课?

onAttachedToWindow和onStart之间的确切区别是什么?

我有时会看到人们使用Activity.onAttachedToWindow方法,但就个人而言,我从未使用它。 在阅读它的文档时,它在我看来,因为它几乎与onStart()相同。 我假设的一件事是: onAttachedToWindow在之前调用onCreate() onStop之前被调用。 我对这个假设是对的吗? 两者的代表是什么?你什么时候使用哪个?

如何使gridview滚动条始终可见android 4.0.3

我的活动中有一个gridview,我想让它的滚动条始终可见。 谁知道怎么做? 谢谢。

如果按下后退按钮,android singleinstance活动不单

我遇到了一个有趣的问题,即Activity被多次创建,甚至它被定义为清单中的singleTask或singelInstance活动。 以下是如何重现这一点。 比如,在主要活动中: @Override protected void onResume() { Intent i = new Intent(MainActivity.class, SingleActivity.class); startActivity(i); } 在我的SingleActivity中,我有: @Override protected void onCreate(Bundle savedInstanceState) { … Log.i(“SingleActivity”, “onCreate ” + System.identityHashCode(this)); … } 在清单中,我有: 现在,如果我启动应用程序,事情似乎没问题,在一种情况下期望:如果我在SingleActivity位于前面时按下“后退”按钮,它会导航回MainActivity , MainActivity.onResume()将创建另一个SingleActivity实例,而不是提出已经存在的那个。 这是我所知道的,因为在日志中,会显示不同的身份哈希码。 如果启动模式是singleTask,则同样如此。 唯一的解决方法似乎是覆盖onBackPressed() ,但这似乎是一个丑陋的解决方案。 我想知道我做错了什么