瀏覽代碼

gui 适配

liuzhenxing1118 5 月之前
父節點
當前提交
090a5d6943

+ 0 - 69
.idea/misc.xml

@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="DesignSurface">
-    <option name="filePathToZoomLevelMap">
-      <map>
-        <entry key="app/src/main/res/drawable-xhdpi/item_character_bg.xml" value="0.1355" />
-        <entry key="app/src/main/res/layout/activity_appslist.xml" value="0.19300911854103345" />
-        <entry key="app/src/main/res/layout/activity_chat.xml" value="0.3401268115942029" />
-        <entry key="app/src/main/res/layout/activity_itemlist.xml" value="0.24094202898550723" />
-        <entry key="app/src/main/res/layout/activity_list.xml" value="0.24094202898550723" />
-        <entry key="app/src/main/res/layout/activity_main.xml" value="0.27355072463768115" />
-        <entry key="app/src/main/res/layout/activity_viewpager.xml" value="0.1889564336372847" />
-        <entry key="app/src/main/res/layout/chat_activity.xml" value="0.19300911854103345" />
-        <entry key="app/src/main/res/layout/chat_delete.xml" value="0.25815217391304346" />
-        <entry key="app/src/main/res/layout/chat_fragment_big_photo.xml" value="0.26268115942028986" />
-        <entry key="app/src/main/res/layout/chat_fragment_bottom.xml" value="0.24094202898550723" />
-        <entry key="app/src/main/res/layout/chat_fragment_downloading.xml" value="0.26811594202898553" />
-        <entry key="app/src/main/res/layout/chat_fragment_function.xml" value="0.25815217391304346" />
-        <entry key="app/src/main/res/layout/chat_fragment_photo.xml" value="0.3383152173913043" />
-        <entry key="app/src/main/res/layout/chat_fragment_record.xml" value="0.24818840579710144" />
-        <entry key="app/src/main/res/layout/chat_fragment_resend.xml" value="0.213768115942029" />
-        <entry key="app/src/main/res/layout/chat_fragment_video.xml" value="0.21693840579710144" />
-        <entry key="app/src/main/res/layout/chat_list.xml" value="0.24682971014492755" />
-        <entry key="app/src/main/res/layout/chat_list_footer.xml" value="0.16058763931104356" />
-        <entry key="app/src/main/res/layout/chat_list_header.xml" value="0.2115036231884058" />
-        <entry key="app/src/main/res/layout/chat_operation.xml" value="0.15896739130434784" />
-        <entry key="app/src/main/res/layout/chat_record.xml" value="0.15896739130434784" />
-        <entry key="app/src/main/res/layout/chat_resend.xml" value="0.22644927536231885" />
-        <entry key="app/src/main/res/layout/item_app.xml" value="0.21354166666666666" />
-        <entry key="app/src/main/res/layout/item_app_title.xml" value="0.27355072463768115" />
-        <entry key="app/src/main/res/layout/item_chat_character.xml" value="0.20380434782608695" />
-        <entry key="app/src/main/res/layout/item_chat_time.xml" value="0.22644927536231885" />
-        <entry key="app/src/main/res/layout/item_contact.xml" value="0.3729166666666667" />
-        <entry key="app/src/main/res/layout/item_contacts.xml" value="0.38768115942028986" />
-        <entry key="app/src/main/res/layout/item_emoji.xml" value="0.161231884057971" />
-        <entry key="app/src/main/res/layout/item_emoji_list.xml" value="0.3691123188405797" />
-        <entry key="app/src/main/res/layout/item_footer.xml" value="0.26811594202898553" />
-        <entry key="app/src/main/res/layout/item_icon_title.xml" value="0.24094202898550723" />
-        <entry key="app/src/main/res/layout/item_me_character.xml" value="0.1889564336372847" />
-        <entry key="app/src/main/res/layout/item_me_emoji.xml" value="0.2269021739130435" />
-        <entry key="app/src/main/res/layout/item_me_image.xml" value="0.23278985507246377" />
-        <entry key="app/src/main/res/layout/item_me_photo.xml" value="0.27898550724637683" />
-        <entry key="app/src/main/res/layout/item_me_text.xml" value="0.3740942028985507" />
-        <entry key="app/src/main/res/layout/item_me_video.xml" value="0.23278985507246377" />
-        <entry key="app/src/main/res/layout/item_me_voice.xml" value="0.2269021739130435" />
-        <entry key="app/src/main/res/layout/item_other_character.xml" value="0.335" />
-        <entry key="app/src/main/res/layout/item_other_emoji.xml" value="0.2269021739130435" />
-        <entry key="app/src/main/res/layout/item_other_image.xml" value="0.23278985507246377" />
-        <entry key="app/src/main/res/layout/item_other_photo.xml" value="0.3740942028985507" />
-        <entry key="app/src/main/res/layout/item_other_video.xml" value="0.11492122335495829" />
-        <entry key="app/src/main/res/layout/item_other_voice.xml" value="0.2269021739130435" />
-        <entry key="app/src/main/res/layout/item_title_center.xml" value="0.24094202898550723" />
-        <entry key="app/src/main/res/layout/item_view_guardian.xml" value="0.16058763931104356" />
-        <entry key="app/src/main/res/layout/item_view_guardian_time.xml" value="0.15896739130434784" />
-        <entry key="app/src/main/res/layout/item_view_invalid.xml" value="0.2269021739130435" />
-        <entry key="app/src/main/res/layout/item_view_me_character.xml" value="0.1" />
-        <entry key="app/src/main/res/layout/item_view_me_emoji.xml" value="0.2318840579710145" />
-        <entry key="app/src/main/res/layout/view_record_wave.xml" value="1.107731252476789" />
-        <entry key="app/src/main/res/layout/view_screen_apps.xml" value="0.19300911854103345" />
-      </map>
-    </option>
-  </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="Android Studio default JDK" project-jdk-type="JavaSDK">
-    <output url="file://$PROJECT_DIR$/build/classes" />
-  </component>
-  <component name="ProjectType">
-    <option name="id" value="Android" />
-  </component>
-</project>

+ 1 - 1
app/src/main/java/com/xplora/xpchat/activity/PagerActivity.java

@@ -146,7 +146,7 @@ public class PagerActivity extends BaseNetworkActivity implements Listener.PlayL
     private void initChatDatas() {
         DataManager.instance().getContactList();
         DataManager.instance().initEmoji();
-        String[] preset_text_array = ResUtils.getStringArray("preset_text_array_", 12);
+        String[] preset_text_array = ResUtils.getStringArray("preset_text_array_", 6);
         DataManager.instance().initPresetText(preset_text_array);
     }
 

+ 6 - 1
app/src/main/java/com/xplora/xpchat/adapter/BaseListAdapter.java

@@ -19,6 +19,7 @@ import android.widget.TextView;
 
 import com.xplora.xpchat.R;
 import com.xplora.xpchat.model.GridModel;
+import com.xplora.xpchat.utils.Constant;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -37,7 +38,11 @@ public class BaseListAdapter extends ArrayAdapter<GridModel> {
         GridModel model = mBaseObjects.get(position);
 
         View view = null;
-        view = LayoutInflater.from(getContext()).inflate(R.layout.item_title_center, null);
+        if (model.cellType == Constant.CellType.TITLE) {
+            view = LayoutInflater.from(getContext()).inflate(R.layout.item_title, null);
+        } else {
+            view = LayoutInflater.from(getContext()).inflate(R.layout.item_title_center, null);
+        }
 
         assert view != null;
         TextView itemTitle = view.findViewById(R.id.item_title);

+ 3 - 3
app/src/main/java/com/xplora/xpchat/fragment/ChatBottomFragment.java

@@ -20,7 +20,7 @@ import androidx.annotation.Nullable;
 public class ChatBottomFragment extends FrameLayout implements ImageButton.OnTouchListener{
     public String TAG = "losion / xpchat :" +  getClass().getSimpleName();
     private Context mContext = null;
-    private Button mRecordBtn = null;
+    private ImageButton mRecordBtn = null;
     private float mStartRawY = 0;
     private Handler mHandler = new Handler();
 
@@ -32,8 +32,8 @@ public class ChatBottomFragment extends FrameLayout implements ImageButton.OnTou
 
     public void initView(Context context) {
         View mRootView = LayoutInflater.from(context).inflate(R.layout.chat_fragment_bottom, this);
-        Button mPrestTextBtn = (Button) mRootView.findViewById(R.id.mPrestTextBtn);
-        mRecordBtn = (Button) mRootView.findViewById(R.id.mRecordBtn);
+        ImageButton mPrestTextBtn = (ImageButton) mRootView.findViewById(R.id.mPrestTextBtn);
+        mRecordBtn = (ImageButton) mRootView.findViewById(R.id.mRecordBtn);
         mRecordBtn.setOnTouchListener(this);
 
         mPrestTextBtn.setOnClickListener(new OnClickListener() {

+ 2 - 0
app/src/main/java/com/xplora/xpchat/fragment/PresetTextFragment.java

@@ -55,6 +55,7 @@ public class PresetTextFragment extends DialogFragment {
         for (int i = 0; i < mPresetTextList.size(); i++) {
             GridModel model = new GridModel();
             model.title = mPresetTextList.get(i).trim();
+            model.cellType = Constant.CellType.TITLE;
             mDataList.add(model);
         }
     }
@@ -63,6 +64,7 @@ public class PresetTextFragment extends DialogFragment {
         ListView listView = rootView.findViewById(R.id.activity_listview);
         ListAdapter mAdapter = mAdapter = new BaseListAdapter(mContext, 0, mDataList);
         listView.setAdapter(mAdapter);
+        listView.setDivider(null);
         listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

+ 1 - 0
app/src/main/java/com/xplora/xpchat/model/GridModel.java

@@ -11,6 +11,7 @@ public class GridModel {
     public String filePath = "";
     public int count = 0; //数量
     public Constant.E_FUNCTION type;
+    public Constant.CellType cellType;
     public boolean isSelected = false;
 
     public BaseBean bean;

+ 13 - 0
app/src/main/java/com/xplora/xpchat/utils/Constant.java

@@ -133,4 +133,17 @@ public class Constant {
         VIDEO,
         VIDEO_COVER, //视频封面
     }
+
+    public enum CellType {
+        TITLE,
+        TITLE_SUBTITLE,
+        TITLE_CENTER,
+        TITLE_EDIT,
+        TITLE_APN,
+        ICON_TITLE,
+        ICON_TITLE_SUBTITLE,
+        ICON_TITLE_CENTER,
+        PROGRESS_TITLE,
+        PROGRESS_TITLE_SUBTITLE
+    }
 }

二進制
app/src/main/res/drawable-xhdpi/bottom_t.png


+ 7 - 7
app/src/main/res/drawable-xhdpi/bottom_t_bg.xml

@@ -4,15 +4,15 @@ android:shape="rectangle">
     <solid android:color="#F5F6F8" />
 
     <corners
-    android:bottomLeftRadius="0dp"
-    android:bottomRightRadius="28dp"
-    android:topLeftRadius="0dp"
-    android:topRightRadius="28dp" />
+    android:bottomLeftRadius="20dp"
+    android:bottomRightRadius="20dp"
+    android:topLeftRadius="20dp"
+    android:topRightRadius="20dp" />
 
     <gradient
-        android:startColor="#FFD435E2"
-        android:endColor="#FF8927CF"
-        android:angle="270"
+        android:angle="315"
+        android:startColor="#0BDAFF"
+        android:endColor="#8200E5"
         />
 
 </shape>

二進制
app/src/main/res/drawable-xhdpi/bottom_voice.png


+ 3 - 3
app/src/main/res/drawable-xhdpi/bottom_voice_bg.xml

@@ -10,8 +10,8 @@
         android:topRightRadius="28dp" />
 
     <gradient
-        android:startColor="#FF3EF1B2"
-        android:endColor="#FF2CBDF0"
-        android:angle="270"
+        android:angle="315"
+        android:startColor="#0AF128"
+        android:endColor="#09A0CB"
         />
 </shape>

+ 10 - 0
app/src/main/res/drawable-xhdpi/item_bg.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<shape
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+    <!-- 填充的颜色 -->
+    <solid android:color="#303030" />
+
+    <!-- 圆角的半径 -->
+    <corners android:radius="10dp" />
+</shape>

+ 6 - 15
app/src/main/res/layout/chat_fragment_bottom.xml

@@ -12,34 +12,25 @@
         android:layout_alignParentBottom="true"
         >
 
-        <Button
+        <ImageButton
             android:id="@+id/mPrestTextBtn"
             android:layout_width="59dp"
             android:layout_height="match_parent"
             android:layout_alignParentStart="true"
             android:layout_centerVertical="true"
-            android:textSize="12sp"
-            android:textFontWeight="700"
-            android:fontFamily="Roboto"
-            android:paddingRight="10dp"
-            android:drawableRight="@drawable/bottom_t"
+            android:paddingTop="3dp"
+            android:src="@drawable/bottom_t"
             android:background="@drawable/bottom_t_bg"
             />
 
-        <Button
+        <ImageButton
             android:id="@+id/mRecordBtn"
             android:layout_width="114dp"
             android:layout_height="match_parent"
             android:layout_alignParentEnd="true"
             android:layout_centerVertical="true"
-            android:text="@string/hold_to_talk"
-            android:textAllCaps="false"
-            android:textSize="12sp"
-            android:textFontWeight="700"
-            android:fontFamily="Roboto"
-            android:textAlignment="textStart"
-            android:paddingLeft="15dp"
-            android:drawableLeft="@drawable/bottom_voice"
+            android:paddingTop="3dp"
+            android:src="@drawable/bottom_voice"
             android:background="@drawable/bottom_voice_bg"
             />
 

+ 23 - 0
app/src/main/res/layout/item_title.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:paddingStart="1dp"
+    android:paddingEnd="1dp"
+    android:paddingTop="2dp"
+    android:paddingBottom="2dp"
+    >
+
+    <TextView
+        android:id="@+id/item_title"
+        android:layout_width="match_parent"
+        android:layout_height="50dp"
+        android:background="@drawable/item_bg"
+        android:paddingStart="15dp"
+        android:gravity="center_vertical"
+        android:textStyle="bold"
+        android:textColor="@color/white"
+        android:textSize="17sp"
+        />
+
+</RelativeLayout>

+ 5 - 5
app/src/main/res/layout/view_record_wave.xml

@@ -10,35 +10,35 @@
         android:id="@+id/mWave1"
         android:layout_width="4dp"
         android:layout_height="40dp"
-        android:background="@color/xp_record_wave"
+        android:background="@color/white"
         />
     <View
         android:id="@+id/mWave2"
         android:layout_width="4dp"
         android:layout_height="40dp"
         android:layout_marginStart="6dp"
-        android:background="@color/xp_record_wave"
+        android:background="@color/white"
         />
     <View
         android:id="@+id/mWave3"
         android:layout_width="4dp"
         android:layout_height="40dp"
         android:layout_marginStart="6dp"
-        android:background="@color/xp_record_wave"
+        android:background="@color/white"
         />
     <View
         android:id="@+id/mWave4"
         android:layout_width="4dp"
         android:layout_height="40dp"
         android:layout_marginStart="6dp"
-        android:background="@color/xp_record_wave"
+        android:background="@color/white"
         />
     <View
         android:id="@+id/mWave5"
         android:layout_width="4dp"
         android:layout_height="40dp"
         android:layout_marginStart="6dp"
-        android:background="@color/xp_record_wave"
+        android:background="@color/white"
         />
 
 </LinearLayout>

+ 6 - 12
app/src/main/res/values/strings.xml

@@ -22,18 +22,12 @@
     <string name="add">Add friend</string>
     <string name="no_file">File not found</string>
     <string name="forward_to">Forward to...</string>
-    <string name="preset_text_array_0">Yes</string>
-    <string name="preset_text_array_1">No</string>
-    <string name="preset_text_array_2">Hello</string>
-    <string name="preset_text_array_3">Cool!</string>
-    <string name="preset_text_array_4">Love you!</string>
-    <string name="preset_text_array_5">I\'m fine</string>
-    <string name="preset_text_array_6">Good luck</string>
-    <string name="preset_text_array_7">Going home now</string>
-    <string name="preset_text_array_8">Call me</string>
-    <string name="preset_text_array_9">Call you later</string>
-    <string name="preset_text_array_10">I\'ll be late</string>
-    <string name="preset_text_array_11">Arriving soon</string>
+    <string name="preset_text_array_0">Hello</string>
+    <string name="preset_text_array_1">Goodbye!</string>
+    <string name="preset_text_array_2">I see.</string>
+    <string name="preset_text_array_3">No</string>
+    <string name="preset_text_array_4">Yes</string>
+    <string name="preset_text_array_5">Thank you</string>
     <string name="network_problem">Network Problem</string>
     <string name="network_problem_content">It looks like you’re in an area with a weak network signal.</string>
     <string name="network_problem_retry">Error Retry!</string>