W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
編寫: roya 原文:https://developer.android.com/training/wearables/ui/confirm.html
Android Wear應(yīng)用中的確認(rèn)界面(Confirmations)通常是全屏或者相比于手持應(yīng)用占更大的部分。這樣確保用戶可以一眼看到確認(rèn)界面(confirmations)且有一個(gè)足夠大的觸摸區(qū)域用于取消一個(gè)操作。
Wearable UI庫(kù)幫助我們?cè)贏ndroid Wear應(yīng)用中顯示確認(rèn)動(dòng)畫和定時(shí)器:
確認(rèn)定時(shí)器
確認(rèn)界面動(dòng)畫
下面的章節(jié)將演示了如何實(shí)現(xiàn)這些模式。
自動(dòng)確認(rèn)定時(shí)器讓用戶取消剛做的操作。當(dāng)用戶做一個(gè)操作,我們的應(yīng)用會(huì)顯示一個(gè)帶有定時(shí)動(dòng)畫的取消按鈕,并且啟動(dòng)該定時(shí)器。用戶可以在定時(shí)結(jié)束前選擇取消操作。如果用戶選擇取消操作或定時(shí)結(jié)束,我們的應(yīng)用會(huì)得到一個(gè)通知。
Figure 1: 一個(gè)確認(rèn)定時(shí)器.
為了在用戶完成操作時(shí)顯示一個(gè)確認(rèn)定時(shí)器:
DelayedConfirmationView
元素到layout中。DelayedConfirmationListener
接口。像下面這樣添加DelayedConfirmationView
元素到layout中:
<android.support.wearable.view.DelayedConfirmationView
android:id="@+id/delayed_confirm"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/cancel_circle"
app:circle_border_color="@color/lightblue"
app:circle_border_width="4dp"
app:circle_radius="16dp">
</android.support.wearable.view.DelayedConfirmationView>
在layout定義中,我們可以用android:src
制定一個(gè)drawable資源,用于顯示在圓形里。然后直接設(shè)置圓的參數(shù)。
為了獲得定時(shí)結(jié)束或用戶點(diǎn)擊按鈕時(shí)的通知,需要在activity中實(shí)現(xiàn)相應(yīng)的listener方法:
public class WearActivity extends Activity implements
DelayedConfirmationView.DelayedConfirmationListener {
private DelayedConfirmationView mDelayedView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_wear_activity);
mDelayedView =
(DelayedConfirmationView) findViewById(R.id.delayed_confirm);
mDelayedView.setListener(this);
}
@Override
public void onTimerFinished(View view) {
// User didn't cancel, perform the action
}
@Override
public void onTimerSelected(View view) {
// User canceled, abort the action
}
}
為了啟動(dòng)定時(shí)器,添加下面的代碼到activity處理用戶選擇某個(gè)操作的位置中:
// Two seconds to cancel the action
mDelayedView.setTotalTimeMs(2000);
// Start the timer
mDelayedView.start();
為了當(dāng)用戶在我們的應(yīng)用中完成一個(gè)操作時(shí)顯示確認(rèn)動(dòng)畫,我們需要?jiǎng)?chuàng)建一個(gè)從應(yīng)用中的某個(gè)activity啟動(dòng)ConfirmationActivity
的intent。我們可以用EXTRA_ANIMATION_TYPE
intent extra來(lái)指定下面其中一種動(dòng)畫:
SUCCESS_ANIMATION
FAILURE_ANIMATION
OPEN_ON_PHONE_ANIMATION
我們還可以在確認(rèn)圖標(biāo)下面添加一條消息。
Figure 2: 一個(gè)確認(rèn)動(dòng)畫
要在應(yīng)用中使用ConfirmationActivity
,首先在manifest文件聲明這個(gè)activity:
<manifest>
<application>
...
<activity
android:name="android.support.wearable.activity.ConfirmationActivity">
</activity>
</application>
</manifest>
然后確定用戶操作的結(jié)果,并使用intent啟動(dòng)activity:
Intent intent = new Intent(this, ConfirmationActivity.class);
intent.putExtra(ConfirmationActivity.EXTRA_ANIMATION_TYPE,
ConfirmationActivity.SUCCESS_ANIMATION);
intent.putExtra(ConfirmationActivity.EXTRA_MESSAGE,
getString(R.string.msg_sent));
startActivity(intent);
當(dāng)確認(rèn)動(dòng)畫顯示結(jié)束后,ConfirmationActivity
會(huì)銷毀(Finish),我們的的activity會(huì)恢復(fù)(Resume)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: