顯示具有 invisible 標籤的文章。 顯示所有文章
顯示具有 invisible 標籤的文章。 顯示所有文章

2015年2月13日 星期五

[Android] 一個步驟完美隱藏物件**Visibility

如果有時候要隱藏某個物件,但是又是動態隱藏,有時候要打開的話,

該如何做呢?

答案就是使用Visibility!

使用方法十分簡單:


元件類別 元件名稱 = (元件類別)findViewById(R.id.xxx);

元件名稱.setVisibility(VIEW.GONE);

有幾種用法

1.VIEW.VISIBLE(可見,保留位置)

2.VIEW.INVISIBLE(不可見,保留位置)

3.VIEW.GONE(不可見,不保留位置)

這樣一來就可以動態來改變xml裡面的東西囉!

END


2014年9月2日 星期二

[Android] 如何開啟後隱藏Activty UI ?

在寫App的過程當中遇到兩個問題

1. 開機時自動啟動
2. 開啟後隱藏UI (用service在背景執行)

第一個問題可能之後幾篇會講到,不過大概就是android 會廣播一則開機訊息,你只要去抓那個訊

息就知道開機了,然後利用intent去啟動class...

第二個問題網路上比較少講到,這邊也沒有做到很完全


大概歸納為三個解決方案:

1.修改Theme 改為Theme.No_Display,但這經過實測,不行。

2.使用finish()函式,經過實測,可行。

使用方法:  在onCreate()裡面都做完事情以後新增一行 finish();

3.使用 moveTaskToBack()

public boolean moveTaskToBack (boolean nonRoot)

Added in API level 1
Move the task containing this activity to the back of the activity stack. The activity's order within the task is unchanged.
Parameters
nonRootIf false then this only works if the activity is the root of a task; if true it will work for any activity in a task.
Returns
  • If the task was moved (or it was already at the back) true is returned, else false.

Google API上面的形容,會回傳值true就是已經移到背景,false則否。

有人會使用moveTaskToBack(true),也有人說也可以改成false,但經過實際測試,兩者皆可。

但API上寫是說true是無論如何都會work,false只有activity在task的root的時候才會作用 。