Jelajahi Sumber

1.修改RA Image Android Mode列表,增加Mode Description描述,并且以富文本形式显示。

Pen Li 8 tahun lalu
induk
melakukan
820dd95209

+ 10 - 2
RA Image/app/app.iml

@@ -78,23 +78,31 @@
       <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard-rules" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/split-apk" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
       <excludeFolder url="file://$MODULE_DIR$/build/outputs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/reports" />
       <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
     </content>
-    <orderEntry type="jdk" jdkName="Android API 25 Platform" jdkType="Android SDK" />
+    <orderEntry type="jdk" jdkName="Android API 25 Platform (1)" jdkType="Android SDK" />
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="library" exported="" name="core-2.3.0" level="project" />
     <orderEntry type="library" exported="" name="constraint-layout-solver-1.0.2" level="project" />

+ 30 - 1
RA Image/app/src/main/java/com/usai/redant/raimage/ModeActivity.java

@@ -3,13 +3,19 @@ package com.usai.redant.raimage;
 import android.content.Context;
 import android.content.Intent;
 import android.graphics.Bitmap;
+import android.graphics.Color;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.v7.app.AppCompatActivity;
+import android.text.Spannable;
+import android.text.SpannableString;
+import android.text.Spanned;
 import android.text.TextUtils;
+import android.text.style.AbsoluteSizeSpan;
+import android.text.style.ForegroundColorSpan;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuItem;
@@ -230,7 +236,30 @@ public class ModeActivity extends AppCompatActivity {
             }
 
             try {
-                holder.mode.setText(mode.getString("name").toString());
+
+                String name = mode.getString("name").toString();
+                String desc = mode.optString("description",null).toString();
+                desc = "dfhajkdhfadfjagdjfgajkdgajdgjafgdsjgajkdfakdadaljlflaalsallsadf44566";
+                if (name != null && name.length() > 0 && desc != null && desc.length() > 0) {
+                    String str = name + " -- " + desc;
+                    Spannable span = new SpannableString(str);
+                    /**
+                     *
+                     * Spanned.SPAN_EXCLUSIVE_EXCLUSIVE --- 不包含两端start和end所在的端点         (a,b)
+                     * Spanned.SPAN_EXCLUSIVE_INCLUSIVE --- 不包含端start,但包含end所在的端点     (a,b]
+                     * Spanned.SPAN_INCLUSIVE_EXCLUSIVE --- 包含两端start,但不包含end所在的端点   [a,b)
+                     * Spanned.SPAN_INCLUSIVE_INCLUSIVE--- 包含两端start和end所在的端点           [a,b]
+                     * */
+                    span.setSpan(new AbsoluteSizeSpan(15,true), name.length() + 1, str.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
+                    span.setSpan(new ForegroundColorSpan(Color.RED),name.length() + 1,str.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+                    span.setSpan(new AbsoluteSizeSpan(17,true), 0, name.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
+                    span.setSpan(new ForegroundColorSpan(Color.BLACK),0,name.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+                    holder.mode.setText(span);
+                } else {
+                    holder.mode.setText(name);
+                }
+
+
                 int enable = mode.getInt("enable");
 
                 if (enable == 0) {

+ 2 - 0
RA Image/app/src/main/res/layout/mode_cell.xml

@@ -12,6 +12,8 @@
         android:textSize="17sp"
         android:textColor="#000000"
         android:layout_marginLeft="10dp"
+        android:maxLines="1"
+        android:ellipsize = "end"
         />
 
 </LinearLayout>