diff --git a/app/src/main/java/com/mango/moshen/ui/im/InputPanel.java b/app/src/main/java/com/mango/moshen/ui/im/InputPanel.java
index e81333699..95753ea20 100644
--- a/app/src/main/java/com/mango/moshen/ui/im/InputPanel.java
+++ b/app/src/main/java/com/mango/moshen/ui/im/InputPanel.java
@@ -347,9 +347,9 @@ public class InputPanel implements IEmoticonSelectedListener, IAudioRecordCallba
public int getPanelTriggerId() {
return R.id.emoji_button;
}
- }).logTrack(false)//output log
+ })
+ .logTrack(false)//output log
.build();
-
messageListView.setPanelSwitchHelper(mHelper);
}
@@ -859,6 +859,10 @@ public class InputPanel implements IEmoticonSelectedListener, IAudioRecordCallba
@Override
public void onRecordSuccess(File audioFile, long audioLength, RecordType recordType) {
+ if (audioLength < 1000) {
+ SingleToastUtil.showToast("说话时间太短!");
+ return;
+ }
IMMessage audioMessage = MessageBuilder.createAudioMessage(container.account, container.sessionType, audioFile, audioLength);
container.proxy.sendMessage(audioMessage);
}
diff --git a/app/src/main/java/com/mango/moshen/ui/im/MessageListPanelEx.java b/app/src/main/java/com/mango/moshen/ui/im/MessageListPanelEx.java
index b3ec971f0..e170b2413 100644
--- a/app/src/main/java/com/mango/moshen/ui/im/MessageListPanelEx.java
+++ b/app/src/main/java/com/mango/moshen/ui/im/MessageListPanelEx.java
@@ -1056,7 +1056,9 @@ public class MessageListPanelEx {
private boolean enableRevokeButton(IMMessage selectedItem) {
return selectedItem.getStatus() == MsgStatusEnum.success
- && selectedItem.getMsgType() == MsgTypeEnum.text
+ && (selectedItem.getMsgType() == MsgTypeEnum.text ||
+ selectedItem.getMsgType() == MsgTypeEnum.audio ||
+ selectedItem.getMsgType() == MsgTypeEnum.image)
&& !recordOnly
&& selectedItem.getDirect() == MsgDirectionEnum.Out
&& CurrentTimeUtils.getCurrentTime() - selectedItem.getTime() < 2 * 60 * 1000;
diff --git a/app/src/main/java/com/mango/moshen/ui/im/avtivity/AddBlackListActivity.java b/app/src/main/java/com/mango/moshen/ui/im/avtivity/AddBlackListActivity.java
index b490ed3fa..471d6edda 100644
--- a/app/src/main/java/com/mango/moshen/ui/im/avtivity/AddBlackListActivity.java
+++ b/app/src/main/java/com/mango/moshen/ui/im/avtivity/AddBlackListActivity.java
@@ -49,6 +49,7 @@ public class AddBlackListActivity extends BaseMvpActivity
+ android:textSize="12sp"
+ tools:text="ID:953842" />
+ android:orientation="vertical">
+
+
+
+
+
+
\ No newline at end of file
diff --git a/nim_uikit/src/com/netease/nim/uikit/common/ui/dialog/CustomPopupWindow.java b/nim_uikit/src/com/netease/nim/uikit/common/ui/dialog/CustomPopupWindow.java
index 2aae1027e..c2968e84d 100644
--- a/nim_uikit/src/com/netease/nim/uikit/common/ui/dialog/CustomPopupWindow.java
+++ b/nim_uikit/src/com/netease/nim/uikit/common/ui/dialog/CustomPopupWindow.java
@@ -1,17 +1,11 @@
package com.netease.nim.uikit.common.ui.dialog;
-import static android.widget.LinearLayout.SHOW_DIVIDER_BEGINNING;
-
import android.content.Context;
import android.graphics.Color;
-import android.graphics.drawable.ColorDrawable;
import android.util.Pair;
import android.view.Gravity;
-import android.view.LayoutInflater;
import android.view.View;
-import android.view.WindowManager;
import android.widget.LinearLayout;
-import android.widget.PopupWindow;
import android.widget.TextView;
import com.netease.nim.uikit.R;
@@ -20,8 +14,10 @@ import com.netease.nim.uikit.common.util.sys.ScreenUtil;
import java.util.LinkedList;
import java.util.List;
+import razerdp.basepopup.BasePopupWindow;
-public class CustomPopupWindow extends PopupWindow {
+
+public class CustomPopupWindow extends BasePopupWindow {
private final Context context;
private final LinearLayout llRoot;
@@ -29,15 +25,17 @@ public class CustomPopupWindow extends PopupWindow {
private int orientation;
public CustomPopupWindow(Context context, int orientation) {
+ super(context);
this.context = context;
this.orientation = orientation;
- llRoot = (LinearLayout) LayoutInflater.from(context).inflate(R.layout.nim_custom_popup_window, null);
- setContentView(llRoot);
- llRoot.setShowDividers(SHOW_DIVIDER_BEGINNING);
+
+ setContentView(createPopupById(R.layout.nim_custom_popup_window));
+ llRoot = findViewById(R.id.ll_root);
llRoot.setOrientation(orientation);
- setBackgroundDrawable(new ColorDrawable());
- setOutsideTouchable(true);
- setFocusable(true);
+ setOutSideDismiss(true);
+ setBackgroundColor(Color.TRANSPARENT);
+ hideKeyboardOnShow(false);
+ setPopupAnimationStyle(-1);
}
public void addItem(String itemText, View.OnClickListener listener) {
@@ -51,9 +49,8 @@ public class CustomPopupWindow extends PopupWindow {
new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, ScreenUtil.dip2px(30))
);
}
- setHeight(ScreenUtil.dip2px(30 * (orientation == LinearLayout.HORIZONTAL ? 1 : itemTextList.size())));
- setWidth(WindowManager.LayoutParams.WRAP_CONTENT);
- showAsDropDown(anchor, xoff, yoff);
+ setPopupGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL);
+ showPopupWindow(anchor);
}
private TextView createTextView(CharSequence text, View.OnClickListener listener) {