![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 kenRO ![]()
![]() |
我自己是寫在按鈕內對三個物件取值後送出,至於空值未選取的判斷則是另外寫,所以想請問各位前輩,上述要求對於Android是否可行,另外是否有必要如此檢查,歡迎提供意見想法 |
1樓
作者回應
kenRO ![]() |
大家好,我有一個程式程序上的疑問,我在修改一個APP,假設有A,B,C三個物件皆為跟資料庫取值,經選取後要透過一個按鈕送出(顯示查尋結果),是問能否在OnClickListener 加入參數(T or F)判斷ABC是否執行完,三個都是true後才送出,這是一個顧客的要求。
我自己是寫在按鈕內對三個物件取值後送出,至於空值未選取的判斷則是另外寫,所以想請問各位前輩,上述要求對於Android是否可行,另外是否有必要如此檢查,歡迎提供意見想法 [code] public OnClickListener clothBeginListener=new OnClickListener(){ @Override public void onClick(View v) { String cloth=clothBegin.getText().toString().trim();//取得使用者輸入 String AString=""; if(cloth.length()>0){ AlertDialog.Builder dialog=new AlertDialog.Builder(StoreInvSearchActivity.this); //-dialog.setTitle("貨號確認按鈕"); for(int i=0;i<clothList.length;i++){ if(clothList[i].length()>=cloth.length())//clothList是從database取出的資料陣列 if((clothList[i].substring(0,cloth.length())).equals(cloth.substring(0,cloth.length()).toUpperCase())) { AString+=clothList[i]+" "; }else{ continue; } } final String[] ListShow =AString.split(" "); AlertDialog.Builder dialog_list=new AlertDialog.Builder(StoreInvSearchActivity.this); dialog_list.setTitle("貨號清單"); dialog_list.setItems(ListShow,new DialogInterface.OnClickListener(){ @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub clothBegin.setText(ListShow[which].toString()); } }); dialog_list.show(); }else{ //- Toast.makeText(StoreInvSearchActivity.this,"請輸入貨號!",Toast.LENGTH_SHORT).show(); showAlertDialog("請輸入貨號"); } } }; [/code] 這是我ABC物件其中之一,監聽的是一個AutoCompleteTextView輸入框,因為本身已經有在送出時判斷未輸入,所以想問一般而言判斷程式未結束(沒輸入),會使用Btn參數傳遞?因為顧客是寫Visual DBtools的,彼此語言溝通會有落差,因此想詢問有經驗的前輩們,希望能告訴經驗淺的小弟。 private OnClickListener SearchClickListener = new OnClickListener() { @Override public void onClick(View v) { if(CM.getActiveNetworkInfo() == null) { showAlertDialog("無網路連線\n請確認網路連線後重試。"); } else { //(+ String storeNo = storeTextView.getText().toString().trim(); storeTextView.setText(storeNo); String begin = clothBegin.getText().toString().trim(); clothBegin.setText(begin); String end = clothEnd.getText().toString().trim(); clothEnd.setText(end); //+) String check = "0"; if(showZero.isChecked()) check = "1"; if(storeNo.isEmpty()) showAlertDialog("請輸入店家代號"); else { SearchTask task = new SearchTask(); task.execute(storeNo, begin, end, "1", check); } } } }; 這是送出按鈕的監聽,對ABC物件做取值後回傳後顯示,我疑問的點就是在如果確定我ABC都會得到值,還有必要再ABC設定一個參數(假設有執行是T)然後在送出按鈕的監聽中檢查ABC傳回的值為T,才會把資料送出這部分
本篇文章回覆於2016-12-23 11:01
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |