我想創建一個帶白色屏幕的標誌,但我不知道是否有一個簡單的方法來做到這一點android.And是的,我知道我有---> http ://www.droiddraw.org/但它仍然dosent幫助me.and如果我創建它,它怎麼能在一些手機工作,因爲屏幕尺寸的如何創建一個好的GUI爲歡迎屏幕
感謝
我想創建一個帶白色屏幕的標誌,但我不知道是否有一個簡單的方法來做到這一點android.And是的,我知道我有---> http ://www.droiddraw.org/但它仍然dosent幫助me.and如果我創建它,它怎麼能在一些手機工作,因爲屏幕尺寸的如何創建一個好的GUI爲歡迎屏幕
感謝
那麼,一旦你有某種標誌你想使用,你可以把它放在一個ImageView中,並將layout_height和layout_width設置爲fill_parent。這樣它將被拉伸以匹配屏幕。
我建議做一個Splash活動來擴展AsyncTask。
例如:
public class Splash extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
GotoHome go = new GotoHome(this);
go.execute();
}
private class GotoHome extends AsyncTask(Void, Void, Void)
{
static final long waitTime = 1 * 4000L;
Context context;
long preTime;
public GotoHome(Context context)
{
this.context = context;
}
@Override
protected void onPostExecute(Void result)
{
super.onPostExecute(result);
startActivity(new Intent(context, YOUR ACTIVITY HERE));
finish();
}
@Override
protected void onPreExecute()
{
super.onPreExecute();
preTime = System.currentTimeMillis();
}
@Override
protected Void doInBackground(Void... args)
{
long timeDifference = System.currentTimeMillis() - preTime;
if(timeDifference < preTime)
{
try
{
Thread.sleep(splashTime - timeDifference);
}
catch(InterruptedException ie)
{
Log.d("GotoHome", ie.getMessage());
}
}
return null;
}
}
然後你splash.xml將看起來像tihs:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/splash_image"
>
</LinearLayout>
splash_image會是您的標誌。
希望它可以幫助:-)
另一個不錯的技巧是設置活動主題是透明的。將其添加到將顯示啓動畫面的活動中。
android:theme="@android:style/Theme.Translucent"
然後創建一個以屏幕爲中心的視圖。因此,您已經創建了一個不錯的啓動畫面 - 要真正將其設置爲添加邊框和漸變背景或背景圖案,並在其上方放置徽標。
現在只需創建一個延遲線程來啓動應用程序活動並完成啓動畫面活動。現在,當用戶打開您的應用程序時,閃屏會顯示您的延遲時間(最好2-3秒),然後加載應用程序。確保您應用邏輯來確定應用程序是否已在運行,這樣,如果應用程序在後臺打開,並且再次單擊該圖標,而不是顯示您可以發送的啓動畫面並意圖將應用程序放在前面。
希望這會有所幫助。