|
@@ -5,6 +5,7 @@ import android.content.res.TypedArray;
|
|
|
import android.graphics.Color;
|
|
|
import android.graphics.Paint;
|
|
|
import android.os.Build;
|
|
|
+import android.os.Bundle;
|
|
|
import android.text.Layout;
|
|
|
import android.text.Spannable;
|
|
|
import android.text.SpannableString;
|
|
@@ -19,12 +20,16 @@ import android.view.View;
|
|
|
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
|
|
+import org.telegram.cricdit.bean.GroupInfoBean;
|
|
|
import org.telegram.cricdit.config.Constants;
|
|
|
+import org.telegram.cricdit.mvp.CommentPresenter;
|
|
|
import org.telegram.messenger.R;
|
|
|
|
|
|
//import com.alibaba.android.arouter.launcher.ARouter;
|
|
|
//import com.cricdit.libbase.arouter.ARouterPath;
|
|
|
import org.telegram.cricdit.base.BaseObserver;
|
|
|
+import org.telegram.ui.ActionBar.BaseFragment;
|
|
|
+import org.telegram.ui.ProfileActivity;
|
|
|
//import com.cricdit.libbase.constants.Constants;
|
|
|
//import com.cricdit.module.main.R;
|
|
|
//import com.cricdit.module.main.bean.GroupInfoBean;
|
|
@@ -72,6 +77,8 @@ public class ExpandTextView extends androidx.appcompat.widget.AppCompatTextView
|
|
|
private int mToExpandImageWidth = 0;
|
|
|
private int mToCloseImageWidth = 0;
|
|
|
|
|
|
+ BaseFragment baseFragment;
|
|
|
+
|
|
|
/**
|
|
|
* 提示文字的颜色
|
|
|
*/
|
|
@@ -101,7 +108,8 @@ public class ExpandTextView extends androidx.appcompat.widget.AppCompatTextView
|
|
|
/**
|
|
|
* 使用前必须调用该方法
|
|
|
*/
|
|
|
- public void init(boolean toExpand, String text, @Nullable CreateAppenderListener createAppenderListener) {
|
|
|
+ public void init(BaseFragment baseFragment, boolean toExpand, String text, @Nullable CreateAppenderListener createAppenderListener) {
|
|
|
+ this.baseFragment = baseFragment;
|
|
|
mMaxLines = getMaxLines();
|
|
|
originText = ToDBC ? ToDBC(text) : toDBC(text);
|
|
|
if (createAppenderListener != null) {
|
|
@@ -266,60 +274,52 @@ public class ExpandTextView extends androidx.appcompat.widget.AppCompatTextView
|
|
|
ClickableSpan clickableSpan = new ClickableSpan() {
|
|
|
@Override
|
|
|
public void onClick(View widget) {
|
|
|
- if (finalWorkingText.contains("https://g.cricdit.com/")) {
|
|
|
- int index = finalWorkingText.indexOf("https://g.cricdit.com/");
|
|
|
+ if (finalWorkingText.contains("https://t.me/")) {
|
|
|
+ int index = finalWorkingText.indexOf("https://t.me/");
|
|
|
int end = finalWorkingText.indexOf(" ", index);
|
|
|
String gName;
|
|
|
if (end != -1) {
|
|
|
- gName = finalWorkingText.substring(index + "https://g.cricdit.com/".length(), end);
|
|
|
+ gName = finalWorkingText.substring(index + "https://t.me/".length(), end);
|
|
|
} else {
|
|
|
- gName = finalWorkingText.substring(index + "https://g.cricdit.com/".length());
|
|
|
+ gName = finalWorkingText.substring(index + "https://t.me/".length());
|
|
|
}
|
|
|
-// new CommentPresenter().groupLinkInfo(gName, new BaseObserver<GroupInfoBean>() {
|
|
|
-// @Override
|
|
|
-// protected void onSuccess(GroupInfoBean data) {
|
|
|
+ new CommentPresenter().groupLinkInfo(gName, new BaseObserver<GroupInfoBean>() {
|
|
|
+ @Override
|
|
|
+ protected void onSuccess(GroupInfoBean data) {
|
|
|
// ARouter.getInstance().build(ARouterPath.PATH_CHAT_CHAT_ACTIVITY).withString(Constant.K_GROUP_ID, data.getGroup_id()).withString(Constant.K_GROUP_NAME, data.getGroup_name())
|
|
|
// .withString(Constant.K_GROUP_AVATAR, data.getGroup_image())
|
|
|
// .navigation();
|
|
|
-//
|
|
|
-// }
|
|
|
-//
|
|
|
-// @Override
|
|
|
-// public void onError(Throwable e) {
|
|
|
-// super.onError(e);
|
|
|
-// }
|
|
|
-// });
|
|
|
- } else if (finalWorkingText.contains("https://u.cricdit.com/")) {
|
|
|
- int index = finalWorkingText.indexOf("https://u.cricdit.com/");
|
|
|
- int end = finalWorkingText.indexOf(" ", index);
|
|
|
- String userId;
|
|
|
- if (end != -1) {
|
|
|
- userId = finalWorkingText.substring(index + "https://g.cricdit.com/".length(), end);
|
|
|
- } else {
|
|
|
- userId = finalWorkingText.substring(index + "https://g.cricdit.com/".length());
|
|
|
- }
|
|
|
-// ARouter.getInstance().build(ARouterPath.PATH_CHAT_CHAT_ACTIVITY).withString(Constant.K_ID, userId)
|
|
|
-// .navigation();
|
|
|
-// ARouter.getInstance()
|
|
|
-// .build(ARouterPath.PATH_MAIN_PERSON_DETAIL_ACTIVITY)
|
|
|
-// .withString(Constants.USER_ID, userId)
|
|
|
-// .navigation();
|
|
|
+ //跳转到群组聊天界面
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onError(Throwable e) {
|
|
|
+ super.onError(e);
|
|
|
+ }
|
|
|
+ });
|
|
|
}
|
|
|
+// else if (finalWorkingText.contains("https://t.me/")) {
|
|
|
+// int index = finalWorkingText.indexOf("https://t.me/");
|
|
|
+// int end = finalWorkingText.indexOf(" ", index);
|
|
|
+// String userId;
|
|
|
+// if (end != -1) {
|
|
|
+// userId = finalWorkingText.substring(index + "https://t.me/".length(), end);
|
|
|
+// } else {
|
|
|
+// userId = finalWorkingText.substring(index + "https://t.me/".length());
|
|
|
+// }
|
|
|
+//// ARouter.getInstance().build(ARouterPath.PATH_CHAT_CHAT_ACTIVITY).withString(Constant.K_ID, userId)
|
|
|
+//// .navigation();
|
|
|
+// //跳转到个人聊天界面
|
|
|
+//// Bundle args = new Bundle();
|
|
|
+//// args.putLong("user_id", Long.parseLong(userId));
|
|
|
+//// baseFragment.presentFragment(new ProfileActivity(args));
|
|
|
+// }
|
|
|
}
|
|
|
};
|
|
|
|
|
|
- if (workingText.contains("https://g.cricdit.com/")) {
|
|
|
- int index = workingText.indexOf("https://g.cricdit.com/");
|
|
|
- int end = workingText.indexOf(" ", index);
|
|
|
- if (end != -1)
|
|
|
- style.setSpan(clickableSpan,
|
|
|
- index, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
- else {
|
|
|
- style.setSpan(clickableSpan,
|
|
|
- index, workingText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
- }
|
|
|
- } else if (workingText.contains("https://u.cricdit.com/")) {
|
|
|
- int index = workingText.indexOf("https://u.cricdit.com/");
|
|
|
+ if (workingText.contains("https://t.me/")) {
|
|
|
+ int index = workingText.indexOf("https://t.me/");
|
|
|
int end = workingText.indexOf(" ", index);
|
|
|
if (end != -1)
|
|
|
style.setSpan(clickableSpan,
|
|
@@ -329,20 +329,23 @@ public class ExpandTextView extends androidx.appcompat.widget.AppCompatTextView
|
|
|
index, workingText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
}
|
|
|
}
|
|
|
+// else if (workingText.contains("https://u.cricdit.com/")) {
|
|
|
+// int index = workingText.indexOf("https://u.cricdit.com/");
|
|
|
+// int end = workingText.indexOf(" ", index);
|
|
|
+// if (end != -1)
|
|
|
+// style.setSpan(clickableSpan,
|
|
|
+// index, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
+// else {
|
|
|
+// style.setSpan(clickableSpan,
|
|
|
+// index, workingText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
+// }
|
|
|
+// }
|
|
|
setText(style);
|
|
|
|
|
|
//设置部分文字颜色
|
|
|
ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(Color.parseColor("#0000FF"));
|
|
|
- if (workingText.contains("https://g.cricdit.com/")) {
|
|
|
- int index = workingText.indexOf("https://g.cricdit.com/");
|
|
|
- int end = workingText.indexOf(" ", index);
|
|
|
- if (end != -1)
|
|
|
- style.setSpan(foregroundColorSpan, index, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
- else {
|
|
|
- style.setSpan(foregroundColorSpan, index, workingText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
- }
|
|
|
- } else if (workingText.contains("https://u.cricdit.com/")) {
|
|
|
- int index = workingText.indexOf("https://u.cricdit.com/");
|
|
|
+ if (workingText.contains("https://t.me/")) {
|
|
|
+ int index = workingText.indexOf("https://t.me/");
|
|
|
int end = workingText.indexOf(" ", index);
|
|
|
if (end != -1)
|
|
|
style.setSpan(foregroundColorSpan, index, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
@@ -350,6 +353,15 @@ public class ExpandTextView extends androidx.appcompat.widget.AppCompatTextView
|
|
|
style.setSpan(foregroundColorSpan, index, workingText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
}
|
|
|
}
|
|
|
+// else if (workingText.contains("https://u.cricdit.com/")) {
|
|
|
+// int index = workingText.indexOf("https://u.cricdit.com/");
|
|
|
+// int end = workingText.indexOf(" ", index);
|
|
|
+// if (end != -1)
|
|
|
+// style.setSpan(foregroundColorSpan, index, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
+// else {
|
|
|
+// style.setSpan(foregroundColorSpan, index, workingText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
|
|
+// }
|
|
|
+// }
|
|
|
//配置给TextView
|
|
|
setMovementMethod(LinkMovementMethod.getInstance());
|
|
|
setText(style);
|