بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
مشکل نمایش UI در استفاده از Thread (حل شد _لطفا برای روشی که استفاده شد نظر بدید)
سلام دوستان
من توی کد زیر به 2 مشکل بر خوردم
G extends Application ActivityEnhanced extends Actvity ActivityStartup extends ActivityEnhanced ActivitTwo extends ActivityEnhanced
توی منیفست هم همرو تعریف کردم !
1. اینکه نمیتونم از G.CurrentActivity استفاده کنم !! و nullpointer میده !!!توی خط اول! خودمم گیج شدم که چرا !
Intent intent = new Intent(G.currentactivity, ActivityTwo.class);
G.currentactivity.startActivity(intent);
2. اینکه من از ترد 2 ثانیه ایی برای برنامه استفاده کردم که بعد از این 2 ثانیه به اکتیویتی دوم بره اما توی این 2 ثانیه UI که برای اکتیویتی اول تعریف شده نمایش داده نمشه !!
setContentView(R.layout.main);
Toast.makeText(G.context, "2000", Toast.LENGTH_LONG).show();
method();
}
public void method() {
try {
Thread.sleep(2000);
Intent intent = new Intent(ActivityStartup.this, ActivityTwo.class);
ActivityStartup.this.startActivity(intent);
}
catch (InterruptedException e) {
e.printStackTrace();
}
0
0
از handler استفاده کن (12 سال پیش)
+1
0
واسه قسمت دوم سوالت کد را بصورتی که داخل جواب نوشتم اصلاح کن درست میشه. قسمت اول هم بررسی میکنم (12 سال پیش)
برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال
amir Alu
12 سال پیش
+1
0
باید داخل oncreate به صورت زیر بنویسی
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
finish();
startActivity(new Intent(ActivityStartup.this,ActivityTwo.class));
}
}, 3000);
پاسخ به سوال
Criss
12 سال پیش
0
0
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.freestyler.my_test.criss"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<application
android:name=".G"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name="ActivityStartup"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="ActivityTwo"
android:label="@string/app_name" >
</activity>
</application>
</manifest>
ActivityEnhanced
package com.freestyler.my_test.criss;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
public class ActivityEnhanced extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
protected void onResume() {
super.onResume();
G.currentactivity = this;
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.i("LOG", "Destroy From " + getClass().getSimpleName() + " Activity");
Toast.makeText(G.context, "GOOD-BYE", Toast.LENGTH_LONG).show();
}
}
G
package com.freestyler.my_test.criss;
import android.app.Activity;
import android.app.Application;
import android.content.Context;
public class G extends Application {
public static Activity currentactivity;
public static Context context;
@Override
public void onCreate() {
super.onCreate();
context = getApplicationContext();
}
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .