Articles of oncreate

如何恢复通知而不重新创建活动?

我以为我已经想到了这个问题,但在对这个问题进行了一些调试之后: 如何使通知无法删除/不可删除我刚刚意识到我的活动仍以随机顺序进入onCreated()和onDestroyed()。 我的活动清单: 我也尝试过launchmodes singleTask,singleInstance。 我的通知意图代码: Intent intent = new Intent(context, MyClass.class); intent.setAction(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_LAUNCHER); //intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); //intent.setFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT); //intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //intent.setFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY); //intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 正如你所看到的,我已经尝试过看起来可能相关的每一面旗帜,但没有运气…… 这会产生一些不需要的伪像,例如每次单击通知时重新启动AlarmManager并触发alarmmanager start-task。 我想避免这个。 有什么建议么? 编辑:我知道有很多像这样的问题,但提供的解决方案似乎没有在这里做到这一点……:/ Edit2:根据要求,这是我的class级: package ***.***.***; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Build; import android.os.Bundle; import android.annotation.TargetApi; import android.app.Activity; import android.app.AlarmManager; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import […]

从Activity的onCreate访问片段视图

我正在制作我的第一个Android应用程序,我有一个Fragment可以在Activity的onCreate()方法中添加到我的Activity中。 我面临的问题是我无法从Activity的onCreate()方法中findFragment包含的任何视图。 其他线程建议这是因为Fragment尚未膨胀,因此对于Fragment包含的任何视图, findViewById()将返回null。 这就是我的意思: 活动: @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); System.out.println(“activity onCreate”); setContentView(R.layout.activity_main); if (savedInstanceState != null) { return; } initialiseUI(); // Fragment added to Activity System.out.println(“end of activity onCreate”); } 分段: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { System.out.println(“fragment onCreateView”); return inflater.inflate(R.layout.event_log, container, false); } 这打印结果: activity onCreate活动结束onCreate片段onCreateView […]

SQLiteOpenHelper无法调用onCreate?

我正在尝试使用sqlite在Android手机上创建本地数据库。 我有一个帮助类,如下所示,用于创建数据库并提供“帮助”。 我想在我的代码的主要部分创建这个类的对象,它也在那里创建数据库和表。 问题: 每当我创建类的对象时,它似乎都没有在帮助器中调用onCreate方法。 我以为这应该发生。 我认为onCreate基本上是该类的构造函数。 (我相信我错了) 那么,为什么不调用onCreate方法呢? 或者我如何创建数据库和表格,我在哪里创建类的对象? 如果这不是一个好方法,那么更好的方法是什么? public class SmartDBHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = “smart_lite_db.db”; private static final int DATABASE_VERSION = 2; private static final String NOTIFY_TABLE_NAME = “user_notify_data”; private static final String HR_TABLE_NAME = “user_hr_data”; private static final String NOTIFY_TABLE_CREATE = “CREATE TABLE ” + […]

必须在super.onCreate上添加内容错误之前调用requestFeature()

我有一个扩展ActionBarActivity的抽象类。 在onCreate ,我有: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); supportRequestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); … } 应用程序因内容错误之前的requestFeature()而崩溃,特别是在行super.onCreate(savedInstanceState)上super.onCreate(savedInstanceState) 。 在阅读了一些类似的post后,我想出了这个解决方案: @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); super.onCreate(savedInstanceState); … } 我的问题是:为什么它会在超级电话上崩溃? 此外,我不会在扩展此类的类中设置settingContentView ,直到我调用super.onCreate 。 它仍然偶尔会崩溃。 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp/com.myapp.cycle.Cycle}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2351) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) at android.app.ActivityThread.access$600(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1331) at android.os.Handler.dispatchMessage(Handler.java:99) […]

我可以在oncreate方法之外使用setContentView吗?

我看到很多人告诉你可以在oncreate方法外面设置setContentView,但是我没有find任何地方的例子。 现在,当我尝试使用setContentView,我的应用程序只是崩溃。 这是我的源代码: AlarmActivity.java: package com.alarm.example; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup.LayoutParams; import android.widget.Button; import android.widget.RelativeLayout; public class AlarmActivity extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Button buton = new Button(this); buton.setId(101); buton.setText("New alarm"); buton.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT)); RelativeLayout layout1 = new RelativeLayout(this); layout1.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); layout1.addView(buton); setContentView(layout1); Button nou =(Button)findViewById(101); nou.setOnClickListener(new View.OnClickListener(){ […]

onCreate,onCreateOptionsMenu,onResume,执行的顺序是什么?

对不起,如果这个问题之前被问到…好吧无论如何,标题问,onCreateOptionsMenu执行什么时候? 之前或之后onResume? 在我的应用程序中,当活动第一次运行/打开订单将onCreate – > onResume – > onCreateOptionsMenu 但如果我改变设备的方向,它会自动调用onDestroy,从而活动将被重新创build,在这种情况下,订单将onCreate – > onCreateOptionsMenu – > onResume 我现在很困惑…有人可以解释一下吗?

获得额外的意图和onCreate方法?

我有类A,B和C.类A发送意图到B,B运行C,C返回到B …..但是然后在B类的onCreate里面它需要类A的意图。但是因为它的来自C类,它不能得到它,但我仍然需要类A的意图 任何想法如何解决这个问题? 我想一个解决scheme可能是将extra.getString存储在数据库或类似的? Bundle extras = getIntent().getExtras(); newString = extras.getString("ID");

Android:仅在onCreate中使用getIntent()?

在Android中(针对API 14-16),我有一个MainActivity和一个NextActivity 。 如果在NextActivity的onCreate()块中调用getIntent()方法,则使用NextActivity从MainActivity启动NextActivity并不困难: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); int data = 7; … Intent intent = new Intent(this, NextActivity.class); intent.putExtra("data", data); startActivity(intent); } } public class NextActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final int data = this.getIntent().getIntExtra("data", 7); … } … […]

图像启动/加载

我可能正在开发一个应用程序,在从onCreate点加载的时候,我只是有一个黑屏(直到应用程序得到它的基础)。 看看其他应用程序,他们有一个公司的标志或凉爽的形象popup几秒钟,有人可以告诉我如何做到这一点,请? 如果你可以设置它显示一个最小的时间?

为什么Bundle对象在onCreate()上始终为空?

我正在尝试进入Android编程,我从一本书中拿了一些例子。 在这些例子中请求放置下面的代码: public class ExemploCicloVida extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); Log.i(TAG, getClassName() + " onCreate() called on: " + icicle); TextView t = new TextView(this); t.setText("Exemplo de ciclo de vida de uma Activity.\nConsulte os logs no LogCat"); setContentView(t); } } 我想知道为什么Bundle对象在这种情况下总是为空。