Browse Source

checkbox添加 EditText筛选

liuyuqi-dellpc 3 years ago
parent
commit
8d9bbd2077

+ 20 - 3
app/src/main/java/me/yoqi/android/appmanager/MainActivity.java

@@ -8,7 +8,6 @@ import android.view.View;
 import android.widget.EditText;
 import android.widget.ListView;
 import android.widget.RadioButton;
-import android.widget.RadioGroup;
 import android.widget.TextView;
 
 import androidx.appcompat.app.AppCompatActivity;
@@ -93,6 +92,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
                         adapter.notifyDataSetChanged();
                         tvLoad.setVisibility(View.GONE);
                         listView.setVisibility(View.VISIBLE);
+                        edtSearch.setEnabled(true);
                     }
                 });
             }
@@ -124,15 +124,32 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
 
     @Override
     public void onClick(View v) {
+        String keyword = edtSearch.getText().toString().trim();
         switch (v.getId()) {
             case R.id.allApp:
                 mdatas.clear();
-                mdatas.addAll(appInfos);
+                if (!keyword.equals("")) {
+                    for (int i = 0; i < appInfos.size(); i++) {
+                        if (appInfos.get(i).getAppName().toLowerCase().contains(keyword) || appInfos.get(i).getPackageName().toLowerCase().contains(keyword)) {
+                            mdatas.add(appInfos.get(i));
+                        }
+                    }
+                } else {
+                    mdatas.addAll(appInfos);
+                }
                 adapter.notifyDataSetChanged();
                 break;
             case R.id.dsfApp:
                 mdatas.clear();
-                mdatas.addAll(dsfappInfos);
+                if (!keyword.equals("")) {
+                    for (int i = 0; i < dsfappInfos.size(); i++) {
+                        if (dsfappInfos.get(i).getAppName().toLowerCase().contains(keyword) || dsfappInfos.get(i).getPackageName().toLowerCase().contains(keyword)) {
+                            mdatas.add(dsfappInfos.get(i));
+                        }
+                    }
+                } else {
+                    mdatas.addAll(dsfappInfos);
+                }
                 adapter.notifyDataSetChanged();
                 break;
         }

+ 3 - 2
app/src/main/res/layout/activity_main.xml

@@ -22,9 +22,10 @@
                 android:layout_marginLeft="20dp"
                 android:layout_marginTop="10dp"
                 android:layout_marginRight="20dp"
+                android:enabled="false"
                 android:hint="@string/hite_search_app"
-                android:textAlignment="center"
-                android:singleLine="true" />
+                android:singleLine="true"
+                android:textAlignment="center" />
 
             <RadioGroup
                 android:id="@+id/rg_app_type"