2013-10-09 61 views
1

我想知道如何在Android桌面上使用SL4A顯示簡單和短的數據(例如:來自運行腳本的溫度數據)。我的腳本從網上獲取溫度數據,我嘗試通過通知,烤麪包和對話框顯示溫度數據,但我想讓它在屏幕上保持可用狀態。 我認爲webview是一個選項,但我不能寫一個簡單的文本框的XML代碼,因爲我不應該我應該。 這是正確的嗎?我在哪裏可以在xml中獲得(非常)簡單的代碼示例以在屏幕上顯示文本(而不是全屏)? 謝謝!在Android桌面上使用SL4A Python顯示數據(example)

回答

0

我剛剛重新閱讀您的問題,但有一些全屏webviews的例子,但據我瞭解,webview是一種全或無的交易。如果你希望我們Xml看看Fullscreenwrapper2,因爲它允許你使用類似的XML佈局本地Java應用程序,從那裏你可以尋找XML佈局的例子,並修改以適應。

你想要一個小部件或只是一個對話框?如果你只是想一個對話框,你可以只使用一個dialogCreateAlert

import android 

droid = android.Android() 

title=("Your Tittle") 
content=("Your content") 

droid.dialogCreateAlert(title, content) 
droid.dialogShow() 

但是如果你想上的小工具,我發現最簡單的soloution是使用minimalistic text widget您可以通過塔斯克或直接使用傳遞數據當地的意圖。

通過塔斯克:

import android 

droid = android.Android() 

activity = 'com.twofortyfouram.locale.intent.action.FIRE_SETTING' 
extras = {} 
extras['de.devmil.minimaltext.locale.extras.VAR_NAME'] = 'Your Variable name' 
extras['de.devmil.minimaltext.locale.extras.VAR_TEXT'] = 'Your Variable content' 

packagename = 'de.devmil.minimaltext' 
classname = 'de.devmil.minimaltext.locale.LocaleFireReceiver' 

intent = droid.makeIntent(activity, None, None, extras, None, packagename, classname).result 

droid.sendBroadcastIntent(intent) 

import android, time 

droid = android.Android() 
class Task(): 
    SET_VARIABLE = 547 
    def new_task(self): 
     self.action_cnt = 0 
     self.extras = {'version_number': '1.0', 'task_name': 'task' + str(time.time()), 'task_priority': 9 } 
    def set_var(self, varname, value): 
     self.action_cnt += 1 
     self.extras['action' + str(self.action_cnt)] = {'action': self.SET_VARIABLE, 'arg:1': varname, 'arg:2': value, 'arg:3': False, 'arg:4': False, 'arg:5': False} 
    def run_task(self): 
     taskIntent = droid.makeIntent('net.dinglisch.android.tasker.ACTION_TASK', None, None, self.extras).result 
     droid.sendBroadcastIntent(taskIntent) 
    def set_var_now(self, varname, value): 
     self.new_task() 
     self.set_var(varname, value) 
     self.run_task() 

t = Task() 
t.set_var_now("%Var", "Your variable value") 

直接通過本地意圖(你在MT通過使用一個局部變量字段中進行選擇)