Skip to content

Commit 33018bb

Browse files
guangyaoguangyao
authored andcommitted
2 parents 78dbc69 + 6d0ab67 commit 33018bb

File tree

6 files changed

+31
-11
lines changed

6 files changed

+31
-11
lines changed

android/chatinput/src/main/java/cn/jiguang/imui/chatinput/ChatInputView.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,9 @@ private void init(Context context, AttributeSet attrs) {
187187
// mSendBtn.setBackground(mStyle.getSendBtnBg());
188188
// mSendBtn.setImageResource(mStyle.getSendBtnIcon());
189189
}
190-
190+
public void resetVoice() {
191+
onChatVoiceTouch.reset();
192+
}
191193
public void addActionView(View view, int index) {
192194
actionLayout.addView(view, index);
193195
}
@@ -680,4 +682,6 @@ private long convertStrTimeToLong(String strTime) {
680682
}
681683
return SystemClock.elapsedRealtime() - longTime;
682684
}
685+
686+
683687
}

android/chatinput/src/main/java/cn/jiguang/imui/chatinput/record/OnChatVoiceTouch.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,14 @@ void updateStatus(UpdateStatus status) {
3636

3737
private void onStartAudioRecord() {
3838
button.setText(text[1]);
39-
button.setSelected(false);
39+
button.setSelected(true);
4040
recordHelper.startRecording();
4141
}
4242

4343
private void onEndAudioRecord(boolean cancel) {
4444
button.setText(text[0]);
4545
button.setSelected(false);
4646

47-
4847
if (cancel) {
4948
recordHelper.cancelRecord();
5049
} else {
@@ -69,6 +68,10 @@ private void updateTimerTip(boolean cancel) {
6968
button.setText(cancel ? text[2] : text[1]);
7069
}
7170

71+
public void reset(){
72+
button.setText(text[0]);
73+
button.setSelected(false);
74+
}
7275
private boolean isCancelled(View view, MotionEvent event) {
7376
int[] location = new int[2];
7477
view.getLocationOnScreen(location);
@@ -91,7 +94,6 @@ public boolean onTouch(View v, MotionEvent event) {
9194
onEndAudioRecord(isCancelled(v, event));
9295
updateStatus(isCancelled(v, event) ? UpdateStatus.Canceled : UpdateStatus.Complete);
9396
} else if (event.getAction() == MotionEvent.ACTION_MOVE) {
94-
// touched = true;
9597
cancelAudioRecord(isCancelled(v, event));
9698
updateStatus(isCancelled(v, event) ? UpdateStatus.Move : UpdateStatus.Continue);
9799
}

android/chatinput/src/main/res/drawable/voice_bg.xml

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,29 @@
33
<item>
44
<shape android:shape="rectangle">
55
<corners android:radius="5dp" />
6-
<solid android:color="@color/aurora_bg_edittext_default" />
7-
<stroke android:width="1dp" android:color="@color/line_bg" />
6+
<solid android:color="@color/voice_re_bg_default" />
7+
<stroke android:width="1dp" android:color="@color/voice_re_bg" />
88
</shape>
99
</item>
1010
<item android:state_pressed="true">
1111
<shape android:shape="rectangle">
1212
<corners android:radius="5dp" />
13-
<solid android:color="@color/aurora_hint_color_input" />
14-
<stroke android:width="1dp" android:color="@color/line_bg" />
13+
<solid android:color="@color/voice_re_bg_pressed" />
14+
<stroke android:width="1dp" android:color="@color/voice_re_bg" />
1515
</shape>
1616
</item>
1717
<item android:state_focused="true">
1818
<shape android:shape="rectangle">
1919
<corners android:radius="8dp" />
20-
<solid android:color="@color/aurora_hint_color_input" />
21-
<stroke android:width="1dp" android:color="@color/line_bg" />
20+
<solid android:color="@color/voice_re_bg_pressed" />
21+
<stroke android:width="1dp" android:color="@color/voice_re_bg" />
22+
</shape>
23+
</item>
24+
<item android:state_selected="true">
25+
<shape android:shape="rectangle">
26+
<corners android:radius="8dp" />
27+
<solid android:color="@color/voice_re_bg_pressed" />
28+
<stroke android:width="1dp" android:color="@color/voice_re_bg" />
2229
</shape>
2330
</item>
2431
</selector>

android/chatinput/src/main/res/layout/view_chatinput.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
xmlns:tools="http://schemas.android.com/tools"
33
android:layout_width="match_parent"
44
android:layout_height="wrap_content"
5-
android:background="@color/aurora_bg_input_default"
5+
android:background="@color/chat_input_bg"
66
android:orientation="vertical">
77

88
<View

android/chatinput/src/main/res/values/colors.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
<resources>
33
<color name="white">#ffffff</color>
44
<color name="line_bg">#a9a3a3</color>
5+
<color name="voice_re_bg">#dadada</color>
6+
<color name="voice_re_bg_default">#F7F7F7</color>
7+
<color name="voice_re_bg_pressed">#D6D7DC</color>
8+
<color name="chat_input_bg">#F7F7F7</color>
59

610
<!-->chat input<-->
711
<color name="aurora_bg_input_default">#f3f3f3</color>

android/src/main/java/cn/jiguang/imui/messagelist/ReactChatInputManager.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,12 +174,15 @@ public void onStartRecord() {
174174

175175
@Override
176176
public void onFinishRecord(String voiceFile, boolean isTooLong, int duration) {
177+
178+
177179
if (TextUtils.isEmpty(voiceFile)) {
178180
timerTipView.updateStatus(0, 2, 0);
179181
handler.sendEmptyMessageDelayed(1, 500);
180182
return;
181183
}
182184
if (isTooLong) {
185+
chatInput.resetVoice();
183186
timerTipView.updateStatus(0, 3, 0);
184187
handler.sendEmptyMessageDelayed(1, 500);
185188
} else {

0 commit comments

Comments
 (0)