Android控制項狀態依賴

2021-07-25 18:50:08 字數 1299 閱讀 5907

達人科技

2016-12-19 20:46

該demo主要針對生產型android客戶端軟體,介面存在多個輸入和多個操作,且操作依賴於輸入狀態。

設定圖中

輸入框有三種狀態:1)待輸入;2)待校驗;3)校驗成功。操作需要當其依賴的輸入資料校驗成功,才能執行。

如果在activity中去判斷輸入框狀態,那麼實際需要呼叫(3個輸入框) * (3種狀態) * (3個按鈕) = 27個if判斷,對於狀態的維護將使得整個程式可維護性極差,並隨著輸入和操作的增加,維護的狀態呈指數增長。

由於目前未上傳jcenter,僅供參考**。

1. 布局檔案引用watchedittext和watchbutton

由於library module中的控制項id不是常量(可參考butterknife對library module的支援採用r2的原因),這裡採用了tag的方式。2. 在activity中通過註解申明依賴

@viewname("商品編碼")

private watchedittext editquery1;

@viewname("儲位")

private watchedittext editquery2;

@viewname("數量")

private watchedittext editquery3;

@viewdependency(name = @viewname("確認"),

dependency = ) private watchbutton buttonsearch1; @viewdependency(name =

@viewname("跳過")/*不依賴輸入*/) private watchbutton buttonsearch2;

@viewdependency(name = @viewname("登記缺貨"),

dependency = ) private watchbutton buttonsearch3;

viewname定義控制項名稱,viewdependency中dependency指定其依賴的控制項tag。3. 直接執行onclick和oneditoraction(修改狀態)

@override

public void onclick(view v) else if (v == buttonsearch2) else if (v == buttonsearch3)

}

android依賴異常

記錄遇到的android依賴異常原因及解決方案 1.可正常訪問倉庫,但個別依賴can t resolve。原因是依賴了本地倉庫,而本地倉庫中只有依賴相關的pom檔案,沒有jar檔案。目前這種異常行為僅在本地android studio中執行時出現,如果是在ci平台上執行,不會出現該異常。可能是因為a...

Android控制項

edittext是輸入文字框,可以進行文字編輯 imageview是顯示的乙個控制項 android id 控制項的id android layout width 控制項的寬度 android layout height 控制項的高度 還有一下屬性 android text 文字內容 android...

表單控制項狀態 禁用狀態

bootstrap框架的表單控制項的禁用狀態和普通的表單禁用狀態實現方法是一樣的,在相應的表單控制項上新增屬性 disabled 和其他表單的禁用狀態不同的是,bootstrap框架做了一些樣式風格的處理 原始碼請檢視bootstrap.css檔案第1723行 第1729行 form control...