Browse Source

empty view

liuzhenxing 3 years ago
parent
commit
c961aa49d3

+ 1 - 1
.idea/misc.xml

@@ -8,7 +8,7 @@
         <entry key="app/src/main/res/drawable/view_shape.xml" value="0.112" />
         <entry key="app/src/main/res/drawable/xp_checkbox.xml" value="0.112" />
         <entry key="app/src/main/res/layout/activity_change_progress.xml" value="0.1" />
-        <entry key="app/src/main/res/layout/activity_display.xml" value="0.25769927536231885" />
+        <entry key="app/src/main/res/layout/activity_display.xml" value="0.11610486891385768" />
         <entry key="app/src/main/res/layout/activity_list.xml" value="0.19300911854103345" />
         <entry key="app/src/main/res/layout/activity_main.xml" value="0.3546195652173913" />
         <entry key="app/src/main/res/layout/bright_activity.xml" value="0.1889564336372847" />

+ 4 - 0
app/src/main/AndroidManifest.xml

@@ -135,6 +135,10 @@
             android:name=".Activity.CameraResolutionActivity"
             android:configChanges="keyboardHidden|orientation|screenSize"
             android:launchMode="standard" />
+        <activity
+            android:name=".Activity.ApnListActivity"
+            android:configChanges="keyboardHidden|orientation|screenSize"
+            android:launchMode="standard" />
     </application>
 
 </manifest>

+ 26 - 18
app/src/main/java/com/xplora/xpsettings/Activity/ApnListActivity.java

@@ -11,6 +11,7 @@ import android.widget.ListView;
 
 import com.xplora.xpsettings.Adapter.BaseListAdapter;
 import com.xplora.xpsettings.Adapter.ListAdapter;
+import com.xplora.xpsettings.Model.ApnModel;
 import com.xplora.xpsettings.Model.BaseModel;
 import com.xplora.xpsettings.R;
 import com.xplora.xpsettings.DataManager;
@@ -21,7 +22,7 @@ import java.util.List;
 
 
 public class ApnListActivity extends BaseActivity {
-
+    List<ApnModel> mApnList = new ArrayList<>();
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -31,15 +32,16 @@ public class ApnListActivity extends BaseActivity {
     }
 
     private void initData() {
-        String photo_resolution = DataManager.getPhotoResolution();
-        String video_resolution = DataManager.getVideoResolution();
-        String[] stringList = getResources().getStringArray(R.array.camero_titls_array);
-        String[] valueList = {photo_resolution, video_resolution};
+        mApnList = DataManager.getApnList();
+        String[] stringList = getResources().getStringArray(R.array.apn_titls_array);
 
-        for (int i = 0; i < stringList.length; i++) {
+        for (int i = 0; i < mApnList.size(); i++) {
+            String apnName = mApnList.get(i).apn_name.trim();
+            String mcc = stringList[3] + mApnList.get(i).mcc;
+            String mnc = stringList[4] + mApnList.get(i).mnc;
             BaseModel model = new BaseModel();
-            model.title = stringList[i].trim();
-            model.subTitle = valueList[i];
+            model.title = apnName;
+            model.subTitle = mcc + " " + mnc;
             model.isShowArrow = true;
             model.cellType = Constant.CellType.TITLE_SUBTITLE;
             mDataList.add(model);
@@ -47,17 +49,23 @@ public class ApnListActivity extends BaseActivity {
     }
 
     private void initView() {
-        mAdapter = new BaseListAdapter(this, 0, mDataList);
         ListView listView = findViewById(R.id.activity_listview);
-        listView.setAdapter(mAdapter);
-        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
-            @Override
-            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
-                Intent intent = new Intent(ApnListActivity.this, CameraResolutionActivity.class);
-                intent.putExtra(Constant.INENT_VIEW_TYPE, position);
-                startActivityForResult(intent, 0);
-            }
-        });
+        View emptyView = findViewById(R.id.empty_view);
+        if (mApnList.size() == 0) {
+            listView.setVisibility(View.GONE);
+            emptyView.setVisibility(View.VISIBLE);
+        } else {
+            mAdapter = new BaseListAdapter(this, 0, mDataList);
+            listView.setAdapter(mAdapter);
+            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+                @Override
+                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+                    Intent intent = new Intent(ApnListActivity.this, CameraResolutionActivity.class);
+                    intent.putExtra(Constant.INENT_VIEW_TYPE, position);
+                    startActivityForResult(intent, 0);
+                }
+            });
+        }
     }
 
     @Override

+ 4 - 0
app/src/main/java/com/xplora/xpsettings/Activity/SettingsActivity.java

@@ -68,6 +68,10 @@ public class SettingsActivity extends BaseActivity {
                     intent = new Intent(this, AboutActivity.class);
                     startActivity(intent);
                     break;
+                case 9:
+                    intent = new Intent(this, ApnListActivity.class);
+                    startActivity(intent);
+                    break;
                 case 10:
                     intent = new Intent(this, ScreenTimeActivity.class);
                     startActivity(intent);

+ 19 - 0
app/src/main/java/com/xplora/xpsettings/DataManager.java

@@ -6,8 +6,11 @@ import android.content.Context;
 import android.content.Intent;
 import android.provider.Settings;
 
+import com.xplora.xpsettings.Model.ApnModel;
 import com.xplora.xpsettings.Utils.Constant;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
 
 public class DataManager extends Application {
@@ -26,6 +29,7 @@ public class DataManager extends Application {
     public static String mLanguage = "en";
     public static String mPhotoResolution;
     public static String mVideoResolution;
+    public static List<ApnModel> mApnList = new ArrayList();
 
 
     @Override
@@ -205,4 +209,19 @@ public class DataManager extends Application {
         } else {
         }
     }
+
+    public static List<ApnModel> getApnList() {
+        if (Constant.DEBUG) {
+            return mApnList;
+        } else {
+            return new ArrayList<>();
+        }
+    }
+
+    public static void setApnList(List<ApnModel> value) {
+        if (Constant.DEBUG) {
+            mApnList = value;
+        } else {
+        }
+    }
 }

+ 9 - 0
app/src/main/java/com/xplora/xpsettings/Model/ApnModel.java

@@ -0,0 +1,9 @@
+package com.xplora.xpsettings.Model;
+
+public class ApnModel {
+    public String apn_name = "";
+    public String user_name = "";
+    public String password = "";
+    public String mcc = "";
+    public String mnc = "";
+}

+ 39 - 0
app/src/main/res/layout/activity_list.xml

@@ -25,4 +25,43 @@
         android:layout_marginTop="57dp"
         >
     </ListView>
+
+
+    <RelativeLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:id="@+id/empty_view"
+        android:visibility="gone">
+
+        <TextView
+            android:id="@+id/empty_text"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_centerHorizontal="true"
+            android:layout_marginTop="65dp"
+            android:textSize="12sp"
+            android:textFontWeight="400"
+            android:textColor="#FFFFFFFF"
+            android:fontFamily="Roboto"
+            android:textAlignment="center"
+            android:text="@string/apn_hint"
+            />
+
+        <Button
+            android:id="@+id/empty_button"
+            android:layout_width="80dp"
+            android:layout_height="28dp"
+            android:layout_centerHorizontal="true"
+            android:layout_alignParentBottom="true"
+            android:layout_marginBottom="25dp"
+            android:textSize="12sp"
+            android:textFontWeight="400"
+            android:textColor="#FFFFFFFF"
+            android:fontFamily="Roboto"
+            android:text="+"
+            android:backgroundTint="@color/xp_green"
+            style="@style/xp_style_button_all"
+            />
+    </RelativeLayout>
+
 </RelativeLayout>

+ 8 - 0
app/src/main/res/values/arrays.xml

@@ -86,6 +86,14 @@
         <item>Video resolution</item>
     </string-array>
 
+    <string-array name="apn_titls_array">
+        <item>APN Name</item>
+        <item>Username</item>
+        <item>Password</item>
+        <item>MCC</item>
+        <item>MNC</item>
+    </string-array>
+
     <array name="screen_time_set_array">
         <item>10</item>
         <item>30</item>

+ 2 - 0
app/src/main/res/values/strings.xml

@@ -34,4 +34,6 @@
     <string name="available_devices">Available devices</string>
     <string name="networks">Networks</string>
     <string name="app_name_status_hint">When turned on, \n will display the watch app name</string>
+
+    <string name="apn_hint">Please tap “+” to add \n new APN</string>
 </resources>