From 9904e5f900ba751c1fe719cdf889f00e9f1418e8 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期三, 21 五月 2025 14:14:04 +0800 Subject: [PATCH] save --- app/src/main/java/com/dollearn/student/network/entity/ReqRestart.kt | 7 app/src/main/java/com/dollearn/student/ui/home/MatchFragment.kt | 5 app/src/main/res/mipmap-xxhdpi/bofangzhong_2.png | 0 app/src/main/java/com/dollearn/student/ui/home/ListenFragment.kt | 16 app/src/main/java/com/dollearn/student/utils/Const.kt | 2 app/src/main/res/mipmap-xxhdpi/voice_question_2.png | 0 app/src/main/res/drawable/bg_orange_8dp.xml | 5 app/src/main/res/values/colors.xml | 1 app/src/main/res/mipmap-xxhdpi/play_2.png | 0 app/src/main/res/drawable/bg_white_8dp_padding.xml | 9 app/src/main/java/com/dollearn/student/network/Apis.kt | 6 app/src/main/java/com/dollearn/student/ui/home/MatchActivity.kt | 57 + app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt | 50 + app/src/main/res/layout/activity_listen.xml | 24 build.gradle | 6 app/src/main/res/layout/fragment_choose_voice.xml | 133 +-- app/src/main/res/xml/scene_fragment_choose_voice.xml | 36 app/src/main/res/drawable/selector_bg_white_grey.xml | 5 app/src/main/res/xml/scene_fragment_listen_voice.xml | 4 xldutils-kotlin/src/main/res/values/colors.xml | 2 app/src/main/java/com/dollearn/student/network/HttpManager.kt | 14 app/src/main/res/layout/fragment_q_a.xml | 334 +++++---- app/src/main/res/layout/fragment_listen.xml | 20 app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt | 92 ++ app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceActivity.kt | 65 + app/src/main/java/com/dollearn/student/ui/home/LookImgFragment.kt | 2 app/src/main/java/com/dollearn/student/ui/home/QAActivity.kt | 57 + app/src/main/res/drawable/selector_bg_voice.xml | 4 app/src/main/res/layout/item_index.xml | 21 app/src/main/java/com/dollearn/student/network/entity/SubjectBean.kt | 10 app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceFragment.kt | 58 + app/src/main/res/layout/fragment_match.xml | 129 +- app/src/main/java/com/dollearn/student/network/ApiService.kt | 6 app/src/main/res/mipmap-xxhdpi/voice_answer_2.png | 0 app/src/main/res/layout/fragment_include.xml | 642 +++++++++--------- app/src/main/java/com/dollearn/student/ui/home/QAFragment.kt | 83 + app/src/main/res/xml/fragment_include_scene.xml | 30 app/src/main/res/layout/activity_login.xml | 4 app/src/main/res/mipmap-xxhdpi/yuyin_2.png | 0 app/src/main/java/com/dollearn/student/ui/home/adapter/IndexAdapter.kt | 17 app/src/main/res/drawable/bg_grey_2dp.xml | 5 app/src/main/java/com/dollearn/student/ui/home/ListenActivity.kt | 70 + app/src/main/res/drawable/selector_enable_choose.xml | 2 43 files changed, 1,245 insertions(+), 788 deletions(-) diff --git a/app/src/main/java/com/dollearn/student/network/ApiService.kt b/app/src/main/java/com/dollearn/student/network/ApiService.kt index c720c83..0662d78 100644 --- a/app/src/main/java/com/dollearn/student/network/ApiService.kt +++ b/app/src/main/java/com/dollearn/student/network/ApiService.kt @@ -82,6 +82,12 @@ @GET(Apis.userGameDifficulty) fun userGameDifficulty(@Query("week") week: Int): Flowable<ResultData<Int?>> + @POST(Apis.restart) + fun restart(@Body body : String): Flowable<ResultData<Any>> + + @POST(Apis.answerQuestion) + fun answerQuestion(@Body body : String): Flowable<ResultData<Any>> + @GET(Apis.getIsOpen) fun getIsOpen(): Flowable<ResultData<Boolean>> diff --git a/app/src/main/java/com/dollearn/student/network/Apis.kt b/app/src/main/java/com/dollearn/student/network/Apis.kt index b9f99f6..7ce8473 100644 --- a/app/src/main/java/com/dollearn/student/network/Apis.kt +++ b/app/src/main/java/com/dollearn/student/network/Apis.kt @@ -3,8 +3,8 @@ object Apis { private var isTest = true - private const val TEST_URL = "http://192.168.110.64:9000/" //周帅内网 -// private const val TEST_URL = "http://1.95.15.237:9000/" //外网 + private const val TEST_URL = "http://vwpmxwbhv59i.guyubao.com/" //周帅内网 +// private const val TEST_URL = "https://dollearn.com/api/" //外网 private const val LINE_URL = "http://8.137.22.229:56666/" //正式服 val BASE_URL = if (isTest) TEST_URL else LINE_URL @@ -52,6 +52,8 @@ const val gameAchievement = "study/base/study/gameAchievement" const val userGameDifficulty = "study/base/study/userGameDifficulty" const val getIsOpen = "management/tSysSet/getIsOpen" + const val restart = "study/base/study/restart" + const val answerQuestion = "study/base/study/answerQuestion" /** diff --git a/app/src/main/java/com/dollearn/student/network/HttpManager.kt b/app/src/main/java/com/dollearn/student/network/HttpManager.kt index e0ad5e6..c434a3c 100644 --- a/app/src/main/java/com/dollearn/student/network/HttpManager.kt +++ b/app/src/main/java/com/dollearn/student/network/HttpManager.kt @@ -126,6 +126,20 @@ } /** + * 重新开始答题 + */ + fun restart(day: Int,week: Int,type: Int): Flowable<ResultData<Any>> { + return request().restart(Gson().toJson(ReqRestart(day,type,week))) + } + + /** + * 保存当前题目记录 + */ + fun answerQuestion(sortBean: SortBean): Flowable<ResultData<Any>> { + return request().answerQuestion(Gson().toJson(sortBean)) + } + + /** * 完成学习 */ fun completeLearning(rate: Int,time: Int,day: Int,week: Int,season: Int,type: Int,teamIds:String): Flowable<ResultData<Int?>> { diff --git a/app/src/main/java/com/dollearn/student/network/entity/ReqRestart.kt b/app/src/main/java/com/dollearn/student/network/entity/ReqRestart.kt new file mode 100644 index 0000000..5bdaba8 --- /dev/null +++ b/app/src/main/java/com/dollearn/student/network/entity/ReqRestart.kt @@ -0,0 +1,7 @@ +package com.dollearn.student.network.entity + +data class ReqRestart( + val day: Int, + val type: Int, + val week: Int +) \ No newline at end of file diff --git a/app/src/main/java/com/dollearn/student/network/entity/SubjectBean.kt b/app/src/main/java/com/dollearn/student/network/entity/SubjectBean.kt index 7b29149..abaa88b 100644 --- a/app/src/main/java/com/dollearn/student/network/entity/SubjectBean.kt +++ b/app/src/main/java/com/dollearn/student/network/entity/SubjectBean.kt @@ -5,8 +5,10 @@ @Parcelize data class SubjectBean( + var accuracy: Double, val `data`: SubjectBeanData, - val subjectList: List<List<Subject>> + val subjectList: List<List<Subject>>, + val list:List<SortBean> ):Parcelable @Parcelize @@ -29,4 +31,10 @@ var right:Boolean = false, //回答正确 var completed:Boolean = false, //已作答 var listend:Boolean = false //已听音 归纳排除题需要 +):Parcelable + +@Parcelize +data class SortBean( + val id: String?, + var status: Int //1灰色未答题 2绿色正确 3红色错误 ):Parcelable \ No newline at end of file diff --git a/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceActivity.kt b/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceActivity.kt index a1a188e..2b3efc5 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceActivity.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceActivity.kt @@ -8,15 +8,17 @@ import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentPagerAdapter +import androidx.recyclerview.widget.LinearLayoutManager import androidx.viewpager.widget.ViewPager -import cn.sinata.xldutils.gone import cn.sinata.xldutils.visible import com.dollearn.student.R import com.dollearn.student.dialog.TipDialog import com.dollearn.student.network.HttpManager +import com.dollearn.student.network.entity.SortBean import com.dollearn.student.network.entity.SubjectBean import com.dollearn.student.network.request import com.dollearn.student.ui.TransparentStatusBarActivity +import com.dollearn.student.ui.home.adapter.IndexAdapter import com.dollearn.student.utils.Const import com.dollearn.student.utils.event.EmptyEvent import kotlinx.android.synthetic.main.activity_listen.* @@ -35,27 +37,66 @@ intent.getIntExtra("season",0) } val data by lazy { intent.getParcelableExtra<SubjectBean>("data") } - private val fragments = arrayListOf<Fragment>() + val fragments = arrayListOf<Fragment>() var totalCount = 0 //总答题次数 var rightCount = 0 //正确答题次数 var time = 0 //学习秒数 private var handler: Handler? = null + val indexList = arrayListOf<SortBean>() + private val indexAdapter = IndexAdapter(indexList) + + val vp by lazy { view_pager } + var recoverd = false //true已经恢复了进度,后续语音可以自动播放 + override fun initClick() { tv_last.setOnClickListener { - (fragments[view_pager.currentItem-1] as ChooseVoiceFragment).recover() - view_pager.setCurrentItem(view_pager.currentItem-1,true) - if (view_pager.currentItem == 0) - tv_last.gone() + val tipDialog = TipDialog() + tipDialog.arguments = bundleOf("msg" to "是否重新开始答题?确认后将清空当前答题进度") + tipDialog.setCallback(object :TipDialog.OnClickCallback{ + override fun onOk() { + showDialog() + HttpManager.restart(day,week,2).request(this@ChooseVoiceActivity){_,_-> + totalCount = 0 //总答题次数 + rightCount = 0 //正确答题次数 + time = 0 //学习秒数 + indexList.forEach { it.status = 1 } + indexAdapter.notifyDataSetChanged() + data?.accuracy = 0.0 + (fragments[0] as ChooseVoiceFragment).recover() + view_pager.setCurrentItem(0,false) + } + } + + override fun onCancel() { + } + }) + tipDialog.show(supportFragmentManager,"restart") } tv_exit.setOnClickListener { onBackPressed() } + + indexAdapter.setOnItemClickListener { view, position -> + val sortBean = indexList[position] + if (position!=view_pager.currentItem&&(sortBean.status!=1||position == indexList.indexOf(indexList.first { it.status == 1 }))){ + (fragments[position] as ChooseVoiceFragment).recover() + view_pager.setCurrentItem(position,false) + } + } } fun next(){ + val listenFragment = fragments[view_pager.currentItem] as ChooseVoiceFragment + val sortBean = indexList[view_pager.currentItem] + sortBean.status = if (listenFragment.right) 2 else 3 //修改本地答题结果,并上传服务器 + HttpManager.answerQuestion(sortBean).request(this){_,data-> + //保存成功 + } + val filter = indexList.filter { it.status != 1 } + data?.accuracy = filter.filter { it.status == 2 }.size.toDouble() / filter.size if (view_pager.currentItem == fragments.lastIndex){ handler?.removeMessages(0) ResultActivity.startResult(this,day,week,season,2,totalCount,rightCount,data!!.data.integral,time,data!!.data.id) @@ -65,14 +106,20 @@ (fragments[view_pager.currentItem+1] as ChooseVoiceFragment).recover() view_pager.setCurrentItem(view_pager.currentItem+1,true) tv_last.visible() + indexAdapter.notifyDataSetChanged() } } } override fun initView() { + rv_index.layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL,false) + rv_index.adapter = indexAdapter data?.apply { - tv_progress.text = "已完成:1/${subjectList.size}" + tv_progress.text = "已完成:1/%d\n正确率:%.2f%s".format(subjectList.size,accuracy*100,"%") + indexList.clear() + indexList.addAll(list) + indexAdapter.notifyDataSetChanged() subjectList.forEachIndexed { index, subject -> fragments.add(ChooseVoiceFragment.getInstance(index)) } @@ -100,7 +147,7 @@ } override fun onPageSelected(position: Int) { - tv_progress.text = "已完成:${position+1}/${fragments.size}" + tv_progress.text = "已完成:%d/%d\n正确率:%.2f%s".format(position+1,fragments.size,accuracy*100,"%") } override fun onPageScrollStateChanged(state: Int) { @@ -127,6 +174,8 @@ tv_last.visible() totalCount = data?.answerNumber?:0 rightCount = data?.correctNumber?:0 + EventBus.getDefault().post(EmptyEvent(Const.EventCode.RECOVERD)) + recoverd = true } } diff --git a/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceFragment.kt index c898449..87021c0 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/ChooseVoiceFragment.kt @@ -15,8 +15,11 @@ import com.dollearn.student.R import com.dollearn.student.utils.AudioUtils import com.dollearn.student.utils.Const +import com.dollearn.student.utils.event.EmptyEvent import com.dollearn.student.utils.extention.clickDelay import kotlinx.android.synthetic.main.fragment_choose_voice.* +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe import org.jetbrains.anko.backgroundResource import org.jetbrains.anko.support.v4.toast @@ -52,17 +55,24 @@ private var playing = false //播放中,不能有任何操作 private val nameViews by lazy { arrayListOf(tv_1,tv_2,tv_3,tv_4) } + private val bgs by lazy { arrayListOf(cl_1,cl_2,cl_3,cl_4) } private val endViews by lazy { arrayListOf(cl_voice_end_1,cl_voice_end_2,cl_voice_end_3,cl_voice_end_4) } private val act by lazy { (requireActivity() as ChooseVoiceActivity) } private var nowVoiceView:View? = null - private val isShowText by lazy { SPUtils.instance().getBoolean(Const.IS_SHOW_TEXT,true) } +// private val isShowText by lazy { SPUtils.instance().getBoolean(Const.IS_SHOW_TEXT,true) } + private val isShowText = false + + private var isAutoPlaying = false //true 自动播放流程 + + var right = true //true进入下一题为全对,false 一旦答错过就置为false,此时进入下一题,本题算做错误 override fun onFirstVisibleToUser() { player.setOnAudioStatusUpdateListener(this) player.stopPlayMusic() + EventBus.getDefault().register(this) handler = object : Handler(Looper.getMainLooper()){ override fun handleMessage(msg: Message) { super.handleMessage(msg) @@ -92,8 +102,9 @@ iv_3.setImageURI(originList[2].img) iv_4.setImageURI(originList[3].img) } - showSubImage() initClick() + showSubImage() + } private fun initClick() { @@ -130,6 +141,7 @@ nowVoiceView = cl_voice1 handler?.sendEmptyMessage(PLAY_RIGHT) }else{ + right = false handler?.sendEmptyMessage(PLAY_ERROR) iv_error_1.visible() dot_1.postDelayed({ @@ -245,12 +257,15 @@ val shuffledList = list.shuffled() voiceList.clear() voiceList.addAll(shuffledList) - if (isShowText) nameViews.forEachIndexed { index, textView -> if (index == currentIndex){ - textView.text = originList[index].name - textView.backgroundResource = R.color.textColor99 + bgs[index].backgroundResource = R.drawable.bg_orange_8dp + if (isShowText){ + textView.text = originList[index].name + textView.backgroundResource = R.color.textColor99 + } }else{ + bgs[index].backgroundResource = R.drawable.bg_white_8dp_padding textView.text = "" textView.backgroundResource = R.color.page_bg } @@ -300,11 +315,28 @@ override fun onTransitionCompleted(p0: MotionLayout?, p1: Int) { endViews[currentIndex].visible() + } override fun onTransitionTrigger(p0: MotionLayout?, p1: Int, p2: Boolean, p3: Float) { } }) + + if (act.fragments[act.vp.currentItem] == this&&act.recoverd){ //自动播放 + isAutoPlaying = true + cl_voice1.callOnClick() + } + + } + + @Subscribe + fun onEvent(e:EmptyEvent){ + if (e.code == Const.EventCode.RECOVERD){ + if (act.fragments[act.vp.currentItem] == this){ //自动播放 + isAutoPlaying = true + cl_voice1.callOnClick() + } + } } /** @@ -312,6 +344,7 @@ */ fun recover(){ Log.e(TAG,"回到上一题,恢复答题前的状态") + right = true motion.progress = 0f currentIndex = 0 endViews.forEach { it.gone() } @@ -386,18 +419,22 @@ iv1_1.visible() iv2_1.visible() iv_playing_1.gone() - } - if (voiceIndex == 1){ + if (isAutoPlaying) + cl_voice2.callOnClick() + }else if (voiceIndex == 1){ rl_check_2.visible() iv1_2.visible() iv2_2.visible() iv_playing_2.gone() - } - if (voiceIndex == 2){ + if (isAutoPlaying) + cl_voice3.callOnClick() + }else if (voiceIndex == 2){ rl_check_3.visible() iv1_3.visible() iv2_3.visible() iv_playing_3.gone() + if (isAutoPlaying) + isAutoPlaying = false } if (voiceIndex == 3){ iv1_1_end.visible() @@ -423,7 +460,7 @@ if (data!!.subjectList[group][currentIndex].completed){ //本题已答对 Log.e(TAG,"选对答案后的播放结束3秒后进入下一图") if (currentIndex == 3){ - handler?.sendEmptyMessageDelayed(TO_NEXT,3000) + handler?.sendEmptyMessageDelayed(TO_NEXT,500)//万俊杰:缩短为0.5秒 }else{ currentIndex++ showSubImage() @@ -446,6 +483,7 @@ override fun onDestroy() { super.onDestroy() + EventBus.getDefault().unregister(this) handler?.removeCallbacksAndMessages(null) } } \ No newline at end of file diff --git a/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt b/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt index e8abb61..fec15a7 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/IncludeActivity.kt @@ -8,16 +8,19 @@ import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentPagerAdapter +import androidx.recyclerview.widget.LinearLayoutManager import androidx.viewpager.widget.ViewPager import cn.sinata.xldutils.gone import cn.sinata.xldutils.visible import com.dollearn.student.R import com.dollearn.student.dialog.TipDialog import com.dollearn.student.network.HttpManager +import com.dollearn.student.network.entity.SortBean import com.dollearn.student.network.entity.Subject import com.dollearn.student.network.entity.SubjectBean import com.dollearn.student.network.request import com.dollearn.student.ui.TransparentStatusBarActivity +import com.dollearn.student.ui.home.adapter.IndexAdapter import com.dollearn.student.utils.Const import com.dollearn.student.utils.event.EmptyEvent import kotlinx.android.synthetic.main.activity_listen.* @@ -43,37 +46,96 @@ var time = 0 //学习秒数 private var handler:Handler? = null + val indexList = arrayListOf<SortBean>() + private val indexAdapter = IndexAdapter(indexList) + override fun initClick() { tv_last.setOnClickListener { - (fragments[view_pager.currentItem-1] as IncludeFragment).recover() - view_pager.setCurrentItem(view_pager.currentItem-1,true) - if (view_pager.currentItem == 0) - tv_last.gone() + val tipDialog = TipDialog() + tipDialog.arguments = bundleOf("msg" to "是否重新开始答题?确认后将清空当前答题进度") + tipDialog.setCallback(object :TipDialog.OnClickCallback{ + override fun onOk() { + showDialog() + HttpManager.restart(day,week,3).request(this@IncludeActivity){_,_-> + totalCount = 0 //总答题次数 + rightCount = 0 //正确答题次数 + time = 0 //学习秒数 + indexList.forEach { it.status = 1 } + indexAdapter.notifyDataSetChanged() + data?.accuracy = 0.0 + view_pager.setCurrentItem(0,false) + (fragments[0] as IncludeFragment).recover() + } + } + + override fun onCancel() { + } + }) + tipDialog.show(supportFragmentManager,"restart") } tv_exit.setOnClickListener { onBackPressed() } + + + indexAdapter.setOnItemClickListener { view, position -> + val sortBean = indexList[position] + if (position!=view_pager.currentItem&&(sortBean.status!=1||position == indexList.indexOf(indexList.first { it.status == 1 }))){ + view_pager.setCurrentItem(position,false) + (fragments[position] as IncludeFragment).recover() + } + } } fun next(){ + val listenFragment = fragments[view_pager.currentItem] as IncludeFragment + val sortBean = indexList[view_pager.currentItem] + sortBean.status = if (listenFragment.right) 2 else 3 //修改本地答题结果,并上传服务器 + HttpManager.answerQuestion(sortBean).request(this){_,data-> + //保存成功 + } + val filter = indexList.filter { it.status != 1 } + data?.accuracy = filter.filter { it.status == 2 }.size.toDouble() / filter.size if (view_pager.currentItem == fragments.lastIndex){ handler?.removeMessages(0) ResultActivity.startResult(this,day,week,season,3,totalCount,rightCount,data!!.data.integral,time,data!!.data.id) finish() }else{ - (fragments[view_pager.currentItem+1] as IncludeFragment).recover() view_pager.setCurrentItem(view_pager.currentItem+1,true) + (fragments[view_pager.currentItem+1] as IncludeFragment).recover() tv_last.visible() + indexAdapter.notifyDataSetChanged() } } override fun initView() { + rv_index.layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL,false) + rv_index.adapter = indexAdapter data?.apply { - tv_progress.text = "已完成:1/${subjectList.size}" + tv_progress.text = "已完成:1/%d\n正确率:%.2f%s".format(subjectList.size,accuracy*100,"%") + indexList.clear() + indexList.addAll(list) + indexAdapter.notifyDataSetChanged() subjectList.forEachIndexed { index, subject -> fragments.add(IncludeFragment.getInstance(index)) } + } + recover() + handler= object :Handler(Looper.myLooper()!!){ + override fun handleMessage(msg: Message) { + super.handleMessage(msg) + if (msg.what == 0){ + time++ + handler?.sendEmptyMessageDelayed(0,1000L) + } + } + } + handler?.sendEmptyMessageDelayed(0,1000L) + } + + private fun recover(){ + HttpManager.teamSchedule(day,week,3).request(this){_,data-> view_pager.adapter = @SuppressLint("WrongConstant") object : FragmentPagerAdapter(supportFragmentManager,0) { override fun getItem(p0: Int): Fragment { @@ -98,28 +160,12 @@ } override fun onPageSelected(position: Int) { - tv_progress.text = "已完成:${position+1}/${subjectList.size}" + tv_progress.text = "已完成:%d/%d\n正确率:%.2f%s".format(position+1,this@IncludeActivity.data!!.subjectList.size,this@IncludeActivity.data!!.accuracy*100,"%") } override fun onPageScrollStateChanged(state: Int) { } }) - } - recover() - handler= object :Handler(Looper.myLooper()!!){ - override fun handleMessage(msg: Message) { - super.handleMessage(msg) - if (msg.what == 0){ - time++ - handler?.sendEmptyMessageDelayed(0,1000L) - } - } - } - handler?.sendEmptyMessageDelayed(0,1000L) - } - - private fun recover(){ - HttpManager.teamSchedule(day,week,3).request(this){_,data-> view_pager.setCurrentItem((data?.schedule?:1)-1,false) if (view_pager.currentItem != 0) tv_last.visible() diff --git a/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt index 320c3ea..d2c726c 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/IncludeFragment.kt @@ -56,6 +56,10 @@ private var nowVoiceView: View? = null + private var isAutoPlaying = false //true自动播放流程 + + var right = true //true进入下一题为全对,false 一旦答错过就置为false,此时进入下一题,本题算做错误 + override fun onFirstVisibleToUser() { player.setOnAudioStatusUpdateListener(this) player.stopPlayMusic() @@ -95,13 +99,13 @@ iv_1.setImageURI(originList[0].img) iv_2.setImageURI(originList[1].img) iv_4.setImageURI(originList[3].img) - if (cl_1.width > dip(203)){ - voiceViews.forEach { - it.layoutParams.width = dip(159) - it.layoutParams.height = dip(52) - it.requestLayout() - } - } +// if (cl_1.width > dip(203)){ +// voiceViews.forEach { +// it.layoutParams.width = dip(159) +// it.layoutParams.height = dip(52) +// it.requestLayout() +// } +// } voiceViews.forEach { it.visible() } },500) } @@ -115,8 +119,10 @@ constraintLayout.isEnabled = data!!.subjectList[group][index].listend } } - showVoiceEnable() initClick() + showVoiceEnable() + isAutoPlaying = true + voiceViews[0].callOnClick() } private fun initClick() { @@ -149,6 +155,7 @@ motion.transitionToEnd() showResultAnim() }else{ + right = false handler?.sendEmptyMessage(PLAY_ERROR) iv_error_1.visible() iv_error_1.postDelayed({ @@ -174,6 +181,7 @@ motion.transitionToEnd() showResultAnim() }else{ + right = false handler?.sendEmptyMessage(PLAY_ERROR) iv_error_2.visible() iv_error_2.postDelayed({ @@ -199,6 +207,7 @@ motion.transitionToEnd() showResultAnim() }else{ + right = false handler?.sendEmptyMessage(PLAY_ERROR) iv_error_3.visible() iv_error_3.postDelayed({ @@ -363,6 +372,8 @@ */ fun recover(){ Log.e(TAG,"回到上一题,恢复答题前的状态") + right = true + isAutoPlaying = false motion.progress = 0f clearAnswerImg() currentImage = 0 @@ -482,7 +493,7 @@ }else{ hideAnswerImg() Log.e(TAG,"本题全部答对,3秒后进入下一图") - handler?.sendEmptyMessageDelayed(TO_NEXT,3000) + handler?.sendEmptyMessageDelayed(TO_NEXT,500) //万俊杰:缩短为0.5秒 } } } @@ -492,8 +503,27 @@ rightPlaying = false data!!.subjectList[group][currentImage].completed = true nowVoiceView?.callOnClick() - }else + }else{ subject.listend = true + if (isAutoPlaying) + when(voiceIndex){ + 0-> voiceViews[1].callOnClick() + 1-> voiceViews[2].callOnClick() + 3-> voiceViews[4].callOnClick() + 2,4,5-> isAutoPlaying = false + } + else if (subject.completed){ + when(voiceIndex){ + 2->{ + isAutoPlaying = true + voiceViews[3].callOnClick() + } + 4->{ + voiceViews[5].callOnClick() + } + } + } + } showVoiceEnable() } diff --git a/app/src/main/java/com/dollearn/student/ui/home/ListenActivity.kt b/app/src/main/java/com/dollearn/student/ui/home/ListenActivity.kt index 3c4197e..d7ede97 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/ListenActivity.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/ListenActivity.kt @@ -8,15 +8,18 @@ import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentPagerAdapter +import androidx.recyclerview.widget.LinearLayoutManager import androidx.viewpager.widget.ViewPager import cn.sinata.xldutils.gone import cn.sinata.xldutils.visible import com.dollearn.student.R import com.dollearn.student.dialog.TipDialog import com.dollearn.student.network.HttpManager +import com.dollearn.student.network.entity.SortBean import com.dollearn.student.network.entity.SubjectBean import com.dollearn.student.network.request import com.dollearn.student.ui.TransparentStatusBarActivity +import com.dollearn.student.ui.home.adapter.IndexAdapter import com.dollearn.student.utils.Const import com.dollearn.student.utils.event.EmptyEvent import kotlinx.android.synthetic.main.activity_listen.* @@ -43,21 +46,64 @@ var time = 0 //学习秒数 private var handler:Handler? = null + val indexList = arrayListOf<SortBean>() + private val indexAdapter = IndexAdapter(indexList) + override fun initClick() { tv_last.setOnClickListener { - val i = view_pager.currentItem - 1 - (fragments[i] as ListenFragment).recover() - view_pager.setCurrentItem(i,i%4 == 0) - if (view_pager.currentItem == 0) - tv_last.gone() + val tipDialog = TipDialog() + tipDialog.arguments = bundleOf("msg" to "是否重新开始答题?确认后将清空当前答题进度") + tipDialog.setCallback(object :TipDialog.OnClickCallback{ + override fun onOk() { + showDialog() + HttpManager.restart(day,week,1).request(this@ListenActivity){_,_-> + totalCount = 0 //总答题次数 + rightCount = 0 //正确答题次数 + time = 0 //学习秒数 + data!!.list.forEach { it.status = 1 } + data!!.accuracy = 0.0 + indexList.forEach { it.status = 1 } + indexAdapter.notifyDataSetChanged() + data?.accuracy = 0.0 + (fragments[0] as ListenFragment).recover() + view_pager.setCurrentItem(0,false) + } + } + + override fun onCancel() { + } + }) + tipDialog.show(supportFragmentManager,"restart") } tv_exit.setOnClickListener { onBackPressed() } + + indexAdapter.setOnItemClickListener { view, position -> + val sortBean = indexList[position] + if (position!=viewPager.currentItem/4&&(sortBean.status!=1||position == indexList.indexOf(indexList.first { it.status == 1 }))){ + (fragments[position*4] as ListenFragment).recover() + view_pager.setCurrentItem(position*4,false) + } + } } fun next(){ + val listenFragment = fragments[viewPager.currentItem] as ListenFragment + val sortBean = data!!.list[viewPager.currentItem] + sortBean.status = if (listenFragment.right) 2 else 3 //修改本地答题结果,并上传服务器 + HttpManager.answerQuestion(sortBean).request(this){_,data-> + //保存成功 + } + indexList.clear() + (data!!.subjectList.indices).forEach { + val subList = data!!.list.subList(it * 4, it * 4 + 4) + val status = if (subList.filter { it.status!=1 }.size != 4) 1 else if (subList.filter { it.status==2 }.size == 4) 2 else 3 + indexList.add(SortBean("",status)) + } + val filter = indexList.filter { it.status != 1 } + data?.accuracy = if (filter.isEmpty()) 0.0 else filter.filter { it.status == 2 }.size.toDouble() / filter.size if (view_pager.currentItem == fragments.lastIndex){ handler?.removeMessages(0) ResultActivity.startResult(this,day,week,season,1,totalCount,rightCount,data!!.data.integral,time,data!!.data.id) @@ -67,13 +113,23 @@ (fragments[i] as ListenFragment).recover() view_pager.setCurrentItem(i,i%4 == 0) tv_last.visible() + indexAdapter.notifyDataSetChanged() } } override fun initView() { + rv_index.layoutManager = LinearLayoutManager(this,LinearLayoutManager.HORIZONTAL,false) + rv_index.adapter = indexAdapter data?.apply { val flatMap = subjectList?.flatMap { it } - tv_progress.text = "已完成:1/${flatMap.size}" + tv_progress.text = "已完成:1/%d\n正确率:%.2f%s".format(subjectList.size,accuracy*100,"%") + indexList.clear() + (subjectList.indices).forEach { + val subList = list.subList(it * 4, it * 4 + 4) + val status = if (subList.filter { it.status!=1 }.size != 4) 1 else if (subList.filter { it.status==2 }.size == 4) 2 else 3 + indexList.add(SortBean("",status)) + } + indexAdapter.notifyDataSetChanged() flatMap.forEachIndexed { index, subject -> fragments.add(ListenFragment.getInstance(index/4,index%4)) } @@ -101,7 +157,7 @@ } override fun onPageSelected(position: Int) { - tv_progress.text = "已完成:${position+1}/${flatMap.size}" + tv_progress.text = "已完成:%d/%d\n正确率:%.2f%s".format(position/4+1,subjectList.size,accuracy*100,"%") } override fun onPageScrollStateChanged(state: Int) { diff --git a/app/src/main/java/com/dollearn/student/ui/home/ListenFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/ListenFragment.kt index 3d5f1f7..9789583 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/ListenFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/ListenFragment.kt @@ -53,6 +53,8 @@ private val resultViewList by lazy { arrayListOf(result_1,result_2,result_3,result_4) } + var right = true //true进入下一题为全对,false 一旦答错过就置为false,此时进入下一题,本题算做错误 + override fun onFirstVisibleToUser() { player.setOnAudioStatusUpdateListener(this) player.stopPlayMusic() @@ -106,7 +108,7 @@ } } - handler?.sendEmptyMessageDelayed(PLAY_VOICE,1500) //进入题目2秒后播放,这里写1.5秒 预算进网络语音加载时间 + handler?.sendEmptyMessageDelayed(PLAY_VOICE,200) //2025.4.8 立即播放 initClick() } @@ -129,7 +131,8 @@ Log.e(TAG,"回到上一题,恢复答题前的状态") hasListen = false hasRight = false - handler?.sendEmptyMessageDelayed(PLAY_VOICE,1500) //进入题目2秒后播放,这里写1.5秒 预算进网络语音加载时间 + right = true + handler?.sendEmptyMessageDelayed(PLAY_VOICE,200) //改为立即播放 cl_1.progress = 0f cl_2.progress = 0f cl_3.progress = 0f @@ -158,7 +161,7 @@ private fun setResultAnimation(v:MotionLayout,index: Int){ v.clickDelay { if (!hasListen) { - myToast("请先听题") +// myToast("请先听题") return@clickDelay } if (playing) @@ -169,6 +172,7 @@ v.transitionToEnd() if (randomList[index].correct != correctVoice){ //答案不对,结束后消失 hasListen = false + right = false handler?.sendEmptyMessage(PLAY_ERROR) v.setTransitionListener(object :MotionLayout.TransitionListener{ override fun onTransitionStarted(p0: MotionLayout?, p1: Int, p2: Int) { @@ -209,14 +213,16 @@ iv_playing.gone() if (hasRight&&!playing){ //选对答案后的播放结束3秒后进入下一图 Log.e(TAG,"选对答案后的播放结束3秒后进入下一图") - handler?.sendEmptyMessageDelayed(TO_NEXT,3000) + handler?.sendEmptyMessageDelayed(TO_NEXT,500) //万俊杰:缩短为0.5秒 } if (rightPlaying){ rightPlaying = false hasRight = true handler?.sendEmptyMessage(PLAY_VOICE) - }else if (errorPlaying) + }else if (errorPlaying){ errorPlaying = false + cl_voice.callOnClick() + } else if (!hasRight) hasListen = true } diff --git a/app/src/main/java/com/dollearn/student/ui/home/LookImgFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/LookImgFragment.kt index c90489b..3638235 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/LookImgFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/LookImgFragment.kt @@ -288,7 +288,7 @@ } if (data!!.storyList[index].completed){ //本题已答对 Log.e(TAG,"选对答案后的播放结束3秒后进入下一图") - handler?.sendEmptyMessageDelayed(TO_NEXT,3000) + handler?.sendEmptyMessageDelayed(TO_NEXT,500) //万俊杰:缩短为0.5秒 } } diff --git a/app/src/main/java/com/dollearn/student/ui/home/MatchActivity.kt b/app/src/main/java/com/dollearn/student/ui/home/MatchActivity.kt index a16508e..87d6d78 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/MatchActivity.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/MatchActivity.kt @@ -8,15 +8,18 @@ import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentPagerAdapter +import androidx.recyclerview.widget.LinearLayoutManager import androidx.viewpager.widget.ViewPager import cn.sinata.xldutils.gone import cn.sinata.xldutils.visible import com.dollearn.student.R import com.dollearn.student.dialog.TipDialog import com.dollearn.student.network.HttpManager +import com.dollearn.student.network.entity.SortBean import com.dollearn.student.network.entity.SubjectBean import com.dollearn.student.network.request import com.dollearn.student.ui.TransparentStatusBarActivity +import com.dollearn.student.ui.home.adapter.IndexAdapter import com.dollearn.student.utils.Const import com.dollearn.student.utils.event.EmptyEvent import kotlinx.android.synthetic.main.activity_listen.* @@ -42,20 +45,56 @@ var time = 0 //学习秒数 private var handler:Handler? = null + val indexList = arrayListOf<SortBean>() + private val indexAdapter = IndexAdapter(indexList) + override fun initClick() { tv_last.setOnClickListener { - (fragments[view_pager.currentItem-1] as MatchFragment).recover() - view_pager.setCurrentItem(view_pager.currentItem-1,true) - if (view_pager.currentItem == 0) - tv_last.gone() + val tipDialog = TipDialog() + tipDialog.arguments = bundleOf("msg" to "是否重新开始答题?确认后将清空当前答题进度") + tipDialog.setCallback(object :TipDialog.OnClickCallback{ + override fun onOk() { + showDialog() + HttpManager.restart(day,week,5).request(this@MatchActivity){_,_-> + totalCount = 0 //总答题次数 + rightCount = 0 //正确答题次数 + time = 0 //学习秒数 + indexList.forEach { it.status = 1 } + indexAdapter.notifyDataSetChanged() + data?.accuracy = 0.0 + (fragments[0] as MatchFragment).recover() + view_pager.setCurrentItem(0,false) + } + } + + override fun onCancel() { + } + }) + tipDialog.show(supportFragmentManager,"restart") } tv_exit.setOnClickListener { onBackPressed() } + + indexAdapter.setOnItemClickListener { view, position -> + val sortBean = indexList[position] + if (position!=view_pager.currentItem&&(sortBean.status!=1||position == indexList.indexOf(indexList.first { it.status == 1 }))){ + (fragments[position] as MatchFragment).recover() + view_pager.setCurrentItem(position,false) + } + } } fun next(){ + val listenFragment = fragments[view_pager.currentItem] as MatchFragment + val sortBean = indexList[view_pager.currentItem] + sortBean.status = if (listenFragment.right) 2 else 3 //修改本地答题结果,并上传服务器 + HttpManager.answerQuestion(sortBean).request(this){_,data-> + //保存成功 + } + val filter = indexList.filter { it.status != 1 } + data?.accuracy = filter.filter { it.status == 2 }.size.toDouble() / filter.size if (view_pager.currentItem == fragments.lastIndex){ handler?.removeMessages(0) ResultActivity.startResult(this,day,week,season,5,totalCount,rightCount,data!!.data.integral,time,data!!.data.id) @@ -64,12 +103,18 @@ (fragments[view_pager.currentItem+1] as MatchFragment).recover() view_pager.setCurrentItem(view_pager.currentItem+1,true) tv_last.visible() + indexAdapter.notifyDataSetChanged() } } override fun initView() { + rv_index.layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL,false) + rv_index.adapter = indexAdapter data?.apply { - tv_progress.text = "已完成:1/${subjectList.size}" + tv_progress.text = "已完成:1/%d\n正确率:%.2f%s".format(subjectList.size,accuracy*100,"%") + indexList.clear() + indexList.addAll(list) + indexAdapter.notifyDataSetChanged() subjectList.forEachIndexed { index, subject -> fragments.add(MatchFragment.getInstance(index)) } @@ -97,7 +142,7 @@ } override fun onPageSelected(position: Int) { - tv_progress.text = "已完成:${position+1}/${subjectList.size}" + tv_progress.text = "已完成:%d/%d\n正确率:%.2f%s".format(position+1,subjectList.size,accuracy*100,"%") } override fun onPageScrollStateChanged(state: Int) { diff --git a/app/src/main/java/com/dollearn/student/ui/home/MatchFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/MatchFragment.kt index 8512d34..13fc332 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/MatchFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/MatchFragment.kt @@ -56,6 +56,9 @@ private val completedVoice = arrayListOf<String>() //已经选了的音频 飞到图片上了 + var right = true //true进入下一题为全对,false 一旦答错过就置为false,此时进入下一题,本题算做错误 + + override fun onFirstVisibleToUser() { player.setOnAudioStatusUpdateListener(this) player.stopPlayMusic() @@ -182,6 +185,7 @@ motion.transitionToEnd() handler?.sendEmptyMessage(PLAY_RIGHT) }else{ + right = false result_1.imageResource = R.mipmap.zhifushibai handler?.sendEmptyMessage(PLAY_ERROR) } @@ -472,6 +476,7 @@ */ fun recover(){ Log.e(TAG,"回到上一题,恢复答题前的状态") + right = true motion.progress = 0f data!!.subjectList[group].forEach { it.completed = false diff --git a/app/src/main/java/com/dollearn/student/ui/home/QAActivity.kt b/app/src/main/java/com/dollearn/student/ui/home/QAActivity.kt index 2771517..07cb6f9 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/QAActivity.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/QAActivity.kt @@ -8,15 +8,18 @@ import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentPagerAdapter +import androidx.recyclerview.widget.LinearLayoutManager import androidx.viewpager.widget.ViewPager import cn.sinata.xldutils.gone import cn.sinata.xldutils.visible import com.dollearn.student.R import com.dollearn.student.dialog.TipDialog import com.dollearn.student.network.HttpManager +import com.dollearn.student.network.entity.SortBean import com.dollearn.student.network.entity.SubjectBean import com.dollearn.student.network.request import com.dollearn.student.ui.TransparentStatusBarActivity +import com.dollearn.student.ui.home.adapter.IndexAdapter import com.dollearn.student.utils.Const import com.dollearn.student.utils.event.EmptyEvent import kotlinx.android.synthetic.main.activity_listen.* @@ -42,20 +45,56 @@ var time = 0 //学习秒数 private var handler:Handler? = null + val indexList = arrayListOf<SortBean>() + private val indexAdapter = IndexAdapter(indexList) + override fun initClick() { tv_last.setOnClickListener { - (fragments[view_pager.currentItem-1] as QAFragment).recover() - view_pager.setCurrentItem(view_pager.currentItem-1,true) - if (view_pager.currentItem == 0) - tv_last.gone() + val tipDialog = TipDialog() + tipDialog.arguments = bundleOf("msg" to "是否重新开始答题?确认后将清空当前答题进度") + tipDialog.setCallback(object :TipDialog.OnClickCallback{ + override fun onOk() { + showDialog() + HttpManager.restart(day,week,4).request(this@QAActivity){_,_-> + totalCount = 0 //总答题次数 + rightCount = 0 //正确答题次数 + time = 0 //学习秒数 + indexList.forEach { it.status = 1 } + indexAdapter.notifyDataSetChanged() + data?.accuracy = 0.0 + (fragments[0] as QAFragment).recover() + view_pager.setCurrentItem(0,false) + } + } + + override fun onCancel() { + } + }) + tipDialog.show(supportFragmentManager,"restart") } tv_exit.setOnClickListener { onBackPressed() } + + indexAdapter.setOnItemClickListener { view, position -> + val sortBean = indexList[position] + if (position!=view_pager.currentItem&&(sortBean.status!=1||position == indexList.indexOf(indexList.first { it.status == 1 }))){ + (fragments[position] as QAFragment).recover() + view_pager.setCurrentItem(position,false) + } + } } fun next(){ + val listenFragment = fragments[view_pager.currentItem] as QAFragment + val sortBean = indexList[view_pager.currentItem] + sortBean.status = if (listenFragment.right) 2 else 3 //修改本地答题结果,并上传服务器 + HttpManager.answerQuestion(sortBean).request(this){_,data-> + //保存成功 + } + val filter = indexList.filter { it.status != 1 } + data?.accuracy = filter.filter { it.status == 2 }.size.toDouble() / filter.size if (view_pager.currentItem == fragments.lastIndex){ handler?.removeMessages(0) ResultActivity.startResult(this,day,week,season,4,totalCount,rightCount,data!!.data.integral,time,data!!.data.id) @@ -64,12 +103,18 @@ (fragments[view_pager.currentItem+1] as QAFragment).recover() view_pager.setCurrentItem(view_pager.currentItem+1,true) tv_last.visible() + indexAdapter.notifyDataSetChanged() } } override fun initView() { + rv_index.layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL,false) + rv_index.adapter = indexAdapter data?.apply { - tv_progress.text = "已完成:1/${subjectList.size}" + tv_progress.text = "已完成:1/%d\n正确率:%.2f%s".format(subjectList.size,accuracy*100,"%") + indexList.clear() + indexList.addAll(list) + indexAdapter.notifyDataSetChanged() subjectList.forEachIndexed { index, subject -> fragments.add(QAFragment.getInstance(index)) } @@ -97,7 +142,7 @@ } override fun onPageSelected(position: Int) { - tv_progress.text = "已完成:${position+1}/${subjectList.size}" + tv_progress.text = "已完成:%d/%d\n正确率:%.2f%s".format(position+1,subjectList.size,accuracy*100,"%") } override fun onPageScrollStateChanged(state: Int) { diff --git a/app/src/main/java/com/dollearn/student/ui/home/QAFragment.kt b/app/src/main/java/com/dollearn/student/ui/home/QAFragment.kt index ab2bb3c..1242aca 100644 --- a/app/src/main/java/com/dollearn/student/ui/home/QAFragment.kt +++ b/app/src/main/java/com/dollearn/student/ui/home/QAFragment.kt @@ -71,6 +71,11 @@ private var nowVoiceView: View? = null + private var isAutoPlaying = 0 + + var right = true //true进入下一题为全对,false 一旦答错过就置为false,此时进入下一题,本题算做错误 + + override fun onFirstVisibleToUser() { player.setOnAudioStatusUpdateListener(this) player.stopPlayMusic() @@ -120,13 +125,15 @@ act.rightCount++ Log.e(TAG,"选择正确") transAnimation(cl_answer_1,voiceViews[questionIndex]) - resultViews[questionIndex].visible() - resultViews[questionIndex].postDelayed({ - resultViews[questionIndex].gone() - },3000) + val resultView = resultViews[questionIndex] + resultView.visible() + resultView.postDelayed({ + resultView.gone() + },2000) nowVoiceView = voiceViews[questionIndex] handler?.sendEmptyMessage(PLAY_RIGHT) }else{ + right = false recoverAnswer() handler?.sendEmptyMessage(PLAY_ERROR) dot_1.visible() @@ -134,7 +141,7 @@ dot_1.postDelayed({ dot_1.gone() iv_error_1.gone() - },3000) + },2000) } } rl_check_2.clickDelay { @@ -151,10 +158,11 @@ act.rightCount++ Log.e(TAG,"选择正确") transAnimation(cl_answer_2,voiceViews[questionIndex]) - resultViews[questionIndex].visible() - resultViews[questionIndex].postDelayed({ - resultViews[questionIndex].gone() - },3000) + val resultView = resultViews[questionIndex] + resultView.visible() + resultView.postDelayed({ + resultView.gone() + },2000) nowVoiceView = voiceViews[questionIndex] handler?.sendEmptyMessage(PLAY_RIGHT) }else{ @@ -165,7 +173,7 @@ dot_2.postDelayed({ dot_2.gone() iv_error_2.gone() - },3000) + },2000) } } rl_check_3.clickDelay { @@ -182,10 +190,11 @@ act.rightCount++ Log.e(TAG,"选择正确") transAnimation(cl_answer_3,voiceViews[questionIndex]) - resultViews[questionIndex].visible() - resultViews[questionIndex].postDelayed({ - resultViews[questionIndex].gone() - },3000) + val resultView = resultViews[questionIndex] + resultView.visible() + resultView.postDelayed({ + resultView.gone() + },2000) nowVoiceView = voiceViews[questionIndex] handler?.sendEmptyMessage(PLAY_RIGHT) }else{ @@ -196,9 +205,15 @@ dot_3.postDelayed({ dot_3.gone() iv_error_3.gone() - },3000) + },2000) } } + + isAutoPlaying = 1 + voiceViews.filterIndexed { index, constraintLayout -> + val subject = list[index] + constraintLayout.isEnabled&&subject.isQuestion == 1 + }.firstOrNull()?.callOnClick() } @@ -206,6 +221,7 @@ * 恢复答案和题目ui */ fun recover(){ + right = true showVoiceUi() list.forEach { it.completed = false } recoverAnswer() @@ -258,13 +274,13 @@ } questionIndex = position if (questionIndex == 0||questionIndex == 2){ - iv2_answer_1.setImageResource(R.mipmap.voice_question) - iv2_answer_2.setImageResource(R.mipmap.voice_question) - iv2_answer_3.setImageResource(R.mipmap.voice_question) + iv2_answer_1.setImageResource(R.mipmap.voice_question_2) + iv2_answer_2.setImageResource(R.mipmap.voice_question_2) + iv2_answer_3.setImageResource(R.mipmap.voice_question_2) }else{ - iv2_answer_1.setImageResource(R.mipmap.voice_answer) - iv2_answer_2.setImageResource(R.mipmap.voice_answer) - iv2_answer_3.setImageResource(R.mipmap.voice_answer) + iv2_answer_1.setImageResource(R.mipmap.voice_answer_2) + iv2_answer_2.setImageResource(R.mipmap.voice_answer_2) + iv2_answer_3.setImageResource(R.mipmap.voice_answer_2) } rl_check_1.visible() rl_check_2.visible() @@ -303,7 +319,7 @@ val x = PropertyValuesHolder.ofFloat("translationX",0f,offx.toFloat()) val y = PropertyValuesHolder.ofFloat("translationY",0f,offy.toFloat()) val animator = ObjectAnimator.ofPropertyValuesHolder(v, x, y) - animator.duration = 1000 + animator.duration = 500 animator.interpolator = LinearInterpolator() animator.start() animator.addListener(object :Animator.AnimatorListener{ @@ -390,16 +406,33 @@ } } - if (list.filter { it.completed }.size == 2){ //全部作答,3秒后下一题 - handler?.sendEmptyMessageDelayed(TO_NEXT,3000) + if (isAutoPlaying in 1..2){ + if (voiceIndex in 0..3){ + cl_answer_1.callOnClick() + }else if (voiceIndex == 4) + cl_answer_2.callOnClick() + else if (voiceIndex == 5) + cl_answer_3.callOnClick() + else if (voiceIndex == 6){ + isAutoPlaying = if (isAutoPlaying == 1) 0 else -1 + } } + if (errorPlaying) errorPlaying = false - if (rightPlaying){ + else if (rightPlaying){ rightPlaying = false nowVoiceView?.callOnClick() list[questionIndex].completed = true recoverAnswer() + }else if (list.filter { it.completed }.size == 2){ //全部作答,3秒后下一题 + handler?.sendEmptyMessageDelayed(TO_NEXT,500) //万俊杰:缩短为0.5秒 + }else if (list.filter { it.completed }.size == 1&& isAutoPlaying == 0){//答完一题,自动播放下一题 + isAutoPlaying = 2 + voiceViews.filterIndexed { index, constraintLayout -> + val subject = list[index] + constraintLayout.isEnabled&&subject.isQuestion == 1 + }.lastOrNull()?.callOnClick() } } diff --git a/app/src/main/java/com/dollearn/student/ui/home/adapter/IndexAdapter.kt b/app/src/main/java/com/dollearn/student/ui/home/adapter/IndexAdapter.kt new file mode 100644 index 0000000..5ec510a --- /dev/null +++ b/app/src/main/java/com/dollearn/student/ui/home/adapter/IndexAdapter.kt @@ -0,0 +1,17 @@ +package com.dollearn.student.ui.home.adapter + +import android.widget.TextView +import cn.sinata.xldutils.adapter.HFRecyclerAdapter +import cn.sinata.xldutils.adapter.util.ViewHolder +import com.dollearn.student.R +import com.dollearn.student.network.entity.SortBean +import org.jetbrains.anko.textColorResource +import java.util.ArrayList + +class IndexAdapter(indexList: ArrayList<SortBean>):HFRecyclerAdapter<SortBean>(indexList, R.layout.item_index) { + override fun onBind(holder: ViewHolder, position: Int, data: SortBean) { + val tv_sort = holder.bind<TextView>(R.id.tv_sort) + tv_sort.text = (position+1).toString() + tv_sort.textColorResource = if (data.status == 2) R.color.textColorGreen else if (data.status == 3) R.color.colorOrange else R.color.textColor99 + } +} diff --git a/app/src/main/java/com/dollearn/student/utils/Const.kt b/app/src/main/java/com/dollearn/student/utils/Const.kt index d3c87c5..8376d2d 100644 --- a/app/src/main/java/com/dollearn/student/utils/Const.kt +++ b/app/src/main/java/com/dollearn/student/utils/Const.kt @@ -68,6 +68,8 @@ const val START_TIMER = 0x0F //开始学习,计算时间 const val STOP_TIMER = 0x11 //结束学习,计时停止 + const val RECOVERD = 0x12 //答题进度已恢复,可以走自动播放流程了 + } diff --git a/app/src/main/res/drawable/bg_grey_2dp.xml b/app/src/main/res/drawable/bg_grey_2dp.xml new file mode 100644 index 0000000..a660cfc --- /dev/null +++ b/app/src/main/res/drawable/bg_grey_2dp.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android"> + <corners android:radius="2dp"/> + <solid android:color="#D4D2CD"/> +</shape> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_orange_8dp.xml b/app/src/main/res/drawable/bg_orange_8dp.xml new file mode 100644 index 0000000..aa90466 --- /dev/null +++ b/app/src/main/res/drawable/bg_orange_8dp.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android"> + <corners android:radius="8dp"/> + <gradient android:startColor="@color/colorDeepGreen" android:endColor="@color/colorDeepGreen" android:angle="270"/> +</shape> \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_8dp_padding.xml b/app/src/main/res/drawable/bg_white_8dp_padding.xml new file mode 100644 index 0000000..5f20381 --- /dev/null +++ b/app/src/main/res/drawable/bg_white_8dp_padding.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:top="4dp" android:bottom="4dp" android:left="4dp" android:right="4dp"> + <shape> + <solid android:color="@color/white"/> + <corners android:radius="8dp"/> + </shape> + </item> +</layer-list> \ No newline at end of file diff --git a/app/src/main/res/drawable/selector_bg_voice.xml b/app/src/main/res/drawable/selector_bg_voice.xml index 9e9ccba..5c6ec0d 100644 --- a/app/src/main/res/drawable/selector_bg_voice.xml +++ b/app/src/main/res/drawable/selector_bg_voice.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item android:drawable="@drawable/bg_blue_8dp" android:state_enabled="true"/> - <item android:drawable="@drawable/bg_grey_8dp" android:state_enabled="false"/> + <item android:drawable="@drawable/bg_white_8dp" android:state_enabled="true"/> + <item android:drawable="@drawable/bg_white_8dp" android:state_enabled="false"/> </selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/selector_bg_white_grey.xml b/app/src/main/res/drawable/selector_bg_white_grey.xml new file mode 100644 index 0000000..8efd020 --- /dev/null +++ b/app/src/main/res/drawable/selector_bg_white_grey.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:drawable="@drawable/bg_white_2dp" android:state_enabled="true"/> + <item android:drawable="@drawable/bg_grey_2dp" android:state_enabled="false"/> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/selector_enable_choose.xml b/app/src/main/res/drawable/selector_enable_choose.xml index 9566e78..b5d5d7a 100644 --- a/app/src/main/res/drawable/selector_enable_choose.xml +++ b/app/src/main/res/drawable/selector_enable_choose.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item android:state_selected="true" android:drawable="@drawable/bg_blue_line_8dp"/> + <item android:state_selected="true" android:drawable="@drawable/bg_white_8dp"/> <item android:state_selected="false" android:drawable="@drawable/bg_blue_line_grey_8dp"/> </selector> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_listen.xml b/app/src/main/res/layout/activity_listen.xml index b2bb9be..901cd47 100644 --- a/app/src/main/res/layout/activity_listen.xml +++ b/app/src/main/res/layout/activity_listen.xml @@ -9,19 +9,20 @@ android:id="@+id/tv_progress" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintBaseline_toBaselineOf="@id/tv_exit" + app:layout_constraintTop_toTopOf="@id/tv_exit" + app:layout_constraintBottom_toBottomOf="@id/tv_exit" android:gravity="center" android:textStyle="bold" android:textSize="14sp" android:textColor="@color/textColor" - android:text="0/0"/> + android:text="已完成:0/0\n正确率:0%"/> <TextView android:id="@+id/tv_exit" android:layout_width="124dp" android:layout_height="wrap_content" android:textSize="14sp" - android:textColor="@color/white" - android:background="@drawable/bg_blue_4dp" + android:textColor="@color/colorPrimary" + android:background="@drawable/bg_blue_line_4dp" android:text="退出" android:paddingVertical="10dp" android:gravity="center" @@ -36,18 +37,27 @@ android:textSize="14sp" android:textColor="@color/colorPrimary" android:background="@drawable/bg_blue_line_4dp" - android:text="上一题" + android:text="重新开始" android:paddingVertical="10dp" - android:visibility="gone" android:gravity="center" app:layout_constraintEnd_toStartOf="@id/tv_progress" app:layout_constraintBottom_toBottomOf="parent" android:layout_marginBottom="12dp" android:textStyle="bold" /> + <androidx.recyclerview.widget.RecyclerView + android:layout_width="wrap_content" + android:layout_height="25dp" + android:id="@+id/rv_index" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginBottom="10dp" + android:background="@color/white" + android:elevation="2dp" + app:layout_constraintBottom_toTopOf="@id/tv_progress"/> <com.dollearn.student.views.NoScrollViewPager android:layout_width="match_parent" android:layout_height="0dp" android:id="@+id/view_pager" app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toTopOf="@id/tv_exit"/> + app:layout_constraintBottom_toTopOf="@id/rv_index"/> </androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index a39612d..79bffb1 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -69,9 +69,9 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:layout_height="wrap_content" - android:layout_marginTop="132dp" + android:layout_marginBottom="32dp" android:text="登录" - app:layout_constraintTop_toBottomOf="@id/et_code" /> + app:layout_constraintBottom_toBottomOf="parent" /> <CheckBox diff --git a/app/src/main/res/layout/fragment_choose_voice.xml b/app/src/main/res/layout/fragment_choose_voice.xml index b4b7129..b7ed982 100644 --- a/app/src/main/res/layout/fragment_choose_voice.xml +++ b/app/src/main/res/layout/fragment_choose_voice.xml @@ -12,20 +12,20 @@ android:id="@+id/center" app:layout_constraintGuide_percent="0.5" android:orientation="vertical"/> + <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_1" android:layout_width="0dp" android:layout_height="0dp" - android:padding="4dp" - android:elevation="2dp" + android:padding="8dp" app:layout_constraintDimensionRatio="333:259" android:layout_marginTop="96dp" app:layout_constraintHorizontal_chainStyle="packed" - android:background="@drawable/bg_white_8dp" + android:background="@drawable/bg_white_8dp_padding" app:layout_constraintTop_toTopOf="parent" app:layout_constraintEnd_toStartOf="@id/center" android:layout_marginEnd="11dp" - android:layout_marginBottom="8dp" + android:layout_marginBottom="4dp" app:layout_constraintBottom_toTopOf="@id/cl_3"> <TextView android:layout_width="match_parent" @@ -54,12 +54,12 @@ android:elevation="2dp" android:visibility="gone" android:id="@+id/cl_voice_end_1" - android:background="@drawable/bg_blue_8dp"> + android:background="@color/white"> <ImageView android:id="@+id/iv1_1_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_chainStyle="packed" @@ -70,7 +70,7 @@ android:id="@+id/iv2_1_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_1_end" @@ -80,7 +80,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -93,12 +93,11 @@ android:id="@+id/cl_2" android:layout_width="0dp" android:layout_height="0dp" - android:elevation="2dp" app:layout_constraintDimensionRatio="333:259" - android:padding="4dp" + android:padding="8dp" app:layout_constraintStart_toEndOf="@id/center" android:layout_marginStart="8dp" - android:background="@drawable/bg_white_8dp" + android:background="@drawable/bg_white_8dp_padding" app:layout_constraintTop_toTopOf="@id/cl_1" app:layout_constraintBottom_toBottomOf="@id/cl_1"> @@ -129,12 +128,12 @@ android:elevation="2dp" android:visibility="gone" android:id="@+id/cl_voice_end_2" - android:background="@drawable/bg_blue_8dp"> + android:background="@color/white"> <ImageView android:id="@+id/iv1_2_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintHorizontal_chainStyle="packed" android:layout_marginEnd="52dp" @@ -145,7 +144,7 @@ android:id="@+id/iv2_2_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_2_end" @@ -155,7 +154,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -168,12 +167,11 @@ android:id="@+id/cl_3" android:layout_width="0dp" android:layout_height="0dp" - android:padding="4dp" - android:elevation="2dp" + android:padding="8dp" android:layout_marginBottom="10dp" app:layout_constraintStart_toStartOf="@id/cl_1" app:layout_constraintEnd_toEndOf="@id/cl_1" - android:background="@drawable/bg_white_8dp" + android:background="@drawable/bg_white_8dp_padding" app:layout_constraintTop_toBottomOf="@id/cl_1" app:layout_constraintBottom_toBottomOf="parent"> @@ -204,12 +202,12 @@ android:elevation="2dp" android:visibility="gone" android:id="@+id/cl_voice_end_3" - android:background="@drawable/bg_blue_8dp"> + android:background="@color/white"> <ImageView android:id="@+id/iv1_3_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -220,7 +218,7 @@ android:id="@+id/iv2_3_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_3_end" @@ -230,7 +228,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -243,11 +241,10 @@ android:id="@+id/cl_4" android:layout_width="0dp" android:layout_height="0dp" - android:elevation="2dp" - android:padding="4dp" + android:padding="8dp" app:layout_constraintStart_toStartOf="@id/cl_2" app:layout_constraintEnd_toEndOf="@id/cl_2" - android:background="@drawable/bg_white_8dp" + android:background="@drawable/bg_white_8dp_padding" app:layout_constraintTop_toTopOf="@id/cl_3" app:layout_constraintBottom_toBottomOf="@id/cl_3"> @@ -278,12 +275,12 @@ android:elevation="2dp" android:visibility="gone" android:id="@+id/cl_voice_end_4" - android:background="@drawable/bg_blue_8dp"> + android:background="@color/white"> <ImageView android:id="@+id/iv1_4_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -294,7 +291,7 @@ android:id="@+id/iv2_4_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_4_end" @@ -305,7 +302,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -318,19 +315,19 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/rl_2" - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_2s" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -341,7 +338,7 @@ android:id="@+id/iv2_2s" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_2s" @@ -358,20 +355,20 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" android:elevation="2dp" android:id="@+id/cl_voice2" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -382,7 +379,7 @@ android:id="@+id/iv2_2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_2" @@ -392,7 +389,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -413,18 +410,18 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/rl_1" - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/rl_2" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_1s" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -435,7 +432,7 @@ android:id="@+id/iv2_1s" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_1s" @@ -451,19 +448,19 @@ app:layout_constraintEnd_toEndOf="parent"/> </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintStart_toStartOf="@id/rl_1" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" android:elevation="2dp" android:id="@+id/cl_voice1" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -474,7 +471,7 @@ android:id="@+id/iv2_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_1" @@ -484,7 +481,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -504,18 +501,18 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/rl_3" - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@id/rl_2" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_3s" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -526,7 +523,7 @@ android:id="@+id/iv2_3s" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_3s" @@ -543,19 +540,19 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" app:layout_constraintStart_toStartOf="@id/rl_3" android:elevation="2dp" android:id="@+id/cl_voice3" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -566,7 +563,7 @@ android:id="@+id/iv2_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_3" @@ -576,7 +573,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -600,8 +597,8 @@ android:layout_marginStart="10dp" app:layout_constraintStart_toEndOf="@id/rl_1"> <RelativeLayout - android:layout_width="52dp" - android:layout_height="52dp" + android:layout_width="40dp" + android:layout_height="40dp" android:background="@drawable/bg_blue_line_8dp" android:visibility="gone" android:id="@+id/rl_check_1"> @@ -622,8 +619,8 @@ android:layout_marginStart="10dp" app:layout_constraintStart_toEndOf="@id/rl_2"> <RelativeLayout - android:layout_width="52dp" - android:layout_height="52dp" + android:layout_width="40dp" + android:layout_height="40dp" android:background="@drawable/bg_blue_line_8dp" android:visibility="gone" android:id="@+id/rl_check_2"> @@ -644,8 +641,8 @@ android:layout_marginStart="10dp" app:layout_constraintStart_toEndOf="@id/rl_3"> <RelativeLayout - android:layout_width="52dp" - android:layout_height="52dp" + android:layout_width="40dp" + android:layout_height="40dp" android:background="@drawable/bg_blue_line_8dp" android:visibility="gone" android:id="@+id/rl_check_3"> diff --git a/app/src/main/res/layout/fragment_include.xml b/app/src/main/res/layout/fragment_include.xml index db1f053..deb9f52 100644 --- a/app/src/main/res/layout/fragment_include.xml +++ b/app/src/main/res/layout/fragment_include.xml @@ -12,22 +12,71 @@ android:layout_height="0dp" android:padding="4dp" android:elevation="2dp" - android:layout_marginTop="14dp" + android:layout_marginTop="24dp" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintVertical_chainStyle="packed" android:background="@drawable/bg_white_8dp" - app:layout_constraintTop_toBottomOf="@id/cl_voice1" + app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toTopOf="@id/cl_4" - android:layout_marginBottom="130dp" - app:layout_constraintDimensionRatio="3:2" + android:layout_marginBottom="100dp" + app:layout_constraintDimensionRatio="296:244" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/cl_2" android:layout_marginEnd="10dp"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="0dp" + android:layout_height="40dp" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" + android:id="@+id/cl_voice1"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:id="@+id/cl_voice1_real" + android:visibility="gone" + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:background="@drawable/selector_bg_voice"> + <ImageView + android:id="@+id/iv1_1" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/yuyin_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:layout_marginStart="25dp"/> + <ImageView + android:id="@+id/iv2_1" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/play_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginEnd="23dp"/> + <ImageView + android:id="@+id/iv_playing_1" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:src="@mipmap/bofangzhong_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" android:id="@+id/iv_1" app:actualImageScaleType="centerCrop" + android:layout_marginTop="40dp" android:layout_height="match_parent"/> </androidx.constraintlayout.widget.ConstraintLayout> @@ -44,11 +93,60 @@ app:layout_constraintStart_toEndOf="@id/cl_1" app:layout_constraintEnd_toStartOf="@id/cl_3" android:layout_marginEnd="10dp"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="0dp" + android:layout_height="40dp" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" + android:id="@+id/cl_voice2"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:id="@+id/cl_voice2_real" + android:visibility="gone" + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:background="@drawable/selector_bg_voice"> + <ImageView + android:id="@+id/iv1_2" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/yuyin_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:layout_marginStart="25dp"/> + <ImageView + android:id="@+id/iv2_2" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/play_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginEnd="23dp"/> + <ImageView + android:id="@+id/iv_playing_2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:src="@mipmap/bofangzhong_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" android:id="@+id/iv_2" app:actualImageScaleType="centerCrop" + android:layout_marginTop="40dp" android:layout_height="match_parent"/> </androidx.constraintlayout.widget.ConstraintLayout> @@ -64,6 +162,53 @@ app:layout_constraintBottom_toBottomOf="@id/cl_1" app:layout_constraintStart_toEndOf="@id/cl_2" app:layout_constraintEnd_toEndOf="parent"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:layout_height="40dp" + app:layout_constraintTop_toTopOf="parent" + android:id="@+id/cl_voice3"> + + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:id="@+id/cl_voice3_real" + android:visibility="gone" + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:background="@drawable/selector_bg_voice"> + <ImageView + android:id="@+id/iv1_3" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/yuyin_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:layout_marginStart="25dp"/> + <ImageView + android:id="@+id/iv2_3" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/play_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginEnd="23dp"/> + <ImageView + android:id="@+id/iv_playing_3" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:src="@mipmap/bofangzhong_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -71,6 +216,7 @@ app:placeholderImage="@color/grey_f1" app:actualImageScaleType="centerCrop" app:failureImage="@color/grey_f1" + android:layout_marginTop="40dp" android:layout_height="match_parent"/> </androidx.constraintlayout.widget.ConstraintLayout> @@ -82,17 +228,65 @@ android:layout_height="0dp" android:padding="4dp" android:elevation="2dp" - android:layout_marginBottom="5dp" + android:layout_marginBottom="12dp" app:layout_constraintTop_toBottomOf="@id/cl_1" android:background="@drawable/bg_white_8dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="@id/cl_1" app:layout_constraintEnd_toEndOf="@id/cl_1"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:layout_height="40dp" + android:id="@+id/cl_voice4" + app:layout_constraintTop_toTopOf="parent"> + + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:id="@+id/cl_voice4_real" + android:visibility="gone" + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:background="@drawable/selector_bg_voice"> + <ImageView + android:id="@+id/iv1_4" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/yuyin_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:layout_marginStart="25dp"/> + <ImageView + android:id="@+id/iv2_4" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/play_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginEnd="23dp"/> + <ImageView + android:id="@+id/iv_playing_4" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:src="@mipmap/bofangzhong_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" android:id="@+id/iv_4" app:actualImageScaleType="centerCrop" + android:layout_marginTop="40dp" android:layout_height="match_parent"/> </androidx.constraintlayout.widget.ConstraintLayout> @@ -109,12 +303,60 @@ app:layout_constraintTop_toTopOf="@id/cl_4" app:layout_constraintStart_toStartOf="@id/cl_2" app:layout_constraintEnd_toEndOf="@id/cl_2"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:layout_height="40dp" + android:id="@+id/cl_voice5" + app:layout_constraintTop_toTopOf="parent"> + + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:id="@+id/cl_voice5_real" + android:visibility="gone" + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:background="@drawable/selector_bg_voice"> + <ImageView + android:id="@+id/iv1_5" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/yuyin_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:layout_marginStart="25dp"/> + <ImageView + android:id="@+id/iv2_5" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/play_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginEnd="23dp"/> + <ImageView + android:id="@+id/iv_playing_5" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:src="@mipmap/bofangzhong_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" android:id="@+id/iv_5" app:placeholderImage="@color/grey_f1" app:actualImageScaleType="centerCrop" + android:layout_marginTop="40dp" app:failureImage="@color/grey_f1" android:layout_height="match_parent"/> </androidx.constraintlayout.widget.ConstraintLayout> @@ -131,333 +373,69 @@ app:layout_constraintTop_toTopOf="@id/cl_4" app:layout_constraintStart_toStartOf="@id/cl_3" app:layout_constraintEnd_toEndOf="@id/cl_3"> + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:layout_height="40dp" + android:id="@+id/cl_voice6" + app:layout_constraintTop_toTopOf="parent"> + + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" + android:id="@+id/cl_voice6_real" + android:visibility="gone" + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:background="@drawable/selector_bg_voice"> + <ImageView + android:id="@+id/iv1_6" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/yuyin_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + android:layout_marginStart="25dp"/> + <ImageView + android:id="@+id/iv2_6" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_marginVertical="6dp" + android:src="@mipmap/play_2" + app:layout_constraintTop_toTopOf="parent" + android:layout_marginEnd="23dp" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" /> + <ImageView + android:id="@+id/iv_playing_6" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:src="@mipmap/bofangzhong_2" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" /> + </androidx.constraintlayout.widget.ConstraintLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" android:id="@+id/iv_6" app:placeholderImage="@color/grey_f1" app:actualImageScaleType="centerCrop" + android:layout_marginTop="40dp" app:failureImage="@color/grey_f1" android:layout_height="match_parent"/> </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="0dp" - android:layout_height="0dp" - app:layout_constraintStart_toStartOf="@id/cl_1" - app:layout_constraintEnd_toEndOf="@id/cl_1" - app:layout_constraintDimensionRatio="3:1" - app:layout_constraintTop_toTopOf="parent" - android:layout_marginTop="15dp" - android:layout_marginStart="4dp" - android:id="@+id/cl_voice1" - android:layout_marginEnd="40dp"> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:id="@+id/cl_voice1_real" - android:visibility="gone" - android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:background="@drawable/selector_bg_voice"> - <ImageView - android:id="@+id/iv1_1" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/yuyin" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:layout_marginStart="25dp"/> - <ImageView - android:id="@+id/iv2_1" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/play" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - android:layout_marginEnd="23dp"/> - <ImageView - android:id="@+id/iv_playing_1" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:visibility="gone" - android:src="@mipmap/bofangzhong" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="0dp" - android:layout_height="0dp" - app:layout_constraintStart_toStartOf="@id/cl_2" - app:layout_constraintEnd_toEndOf="@id/cl_2" - app:layout_constraintDimensionRatio="3:1" - app:layout_constraintTop_toTopOf="@id/cl_voice1" - android:id="@+id/cl_voice2" - android:layout_marginStart="4dp" - android:layout_marginEnd="40dp"> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:id="@+id/cl_voice2_real" - android:visibility="gone" - android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:background="@drawable/selector_bg_voice"> - <ImageView - android:id="@+id/iv1_2" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/yuyin" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:layout_marginStart="25dp"/> - <ImageView - android:id="@+id/iv2_2" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/play" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - android:layout_marginEnd="23dp"/> - <ImageView - android:id="@+id/iv_playing_2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:visibility="gone" - android:src="@mipmap/bofangzhong" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="0dp" - android:layout_height="0dp" - app:layout_constraintStart_toStartOf="@id/cl_3" - app:layout_constraintEnd_toEndOf="@id/cl_3" - app:layout_constraintDimensionRatio="3:1" - app:layout_constraintTop_toTopOf="@id/cl_voice1" - android:id="@+id/cl_voice3" - android:layout_marginStart="4dp" - android:layout_marginEnd="40dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:id="@+id/cl_voice3_real" - android:visibility="gone" - android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:background="@drawable/selector_bg_voice"> - <ImageView - android:id="@+id/iv1_3" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/yuyin" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:layout_marginStart="25dp"/> - <ImageView - android:id="@+id/iv2_3" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/play" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - android:layout_marginEnd="23dp"/> - <ImageView - android:id="@+id/iv_playing_3" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:visibility="gone" - android:src="@mipmap/bofangzhong" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="0dp" - android:layout_height="0dp" - app:layout_constraintStart_toStartOf="@id/cl_4" - app:layout_constraintEnd_toEndOf="@id/cl_4" - app:layout_constraintDimensionRatio="3:1" - app:layout_constraintBottom_toTopOf="@id/cl_4" - android:layout_marginBottom="14dp" - android:id="@+id/cl_voice4" - android:layout_marginStart="4dp" - android:layout_marginEnd="40dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:id="@+id/cl_voice4_real" - android:visibility="gone" - android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:background="@drawable/selector_bg_voice"> - <ImageView - android:id="@+id/iv1_4" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/yuyin" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:layout_marginStart="25dp"/> - <ImageView - android:id="@+id/iv2_4" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/play" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - android:layout_marginEnd="23dp"/> - <ImageView - android:id="@+id/iv_playing_4" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:visibility="gone" - android:src="@mipmap/bofangzhong" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="0dp" - android:layout_height="0dp" - app:layout_constraintStart_toStartOf="@id/cl_5" - app:layout_constraintEnd_toEndOf="@id/cl_5" - app:layout_constraintDimensionRatio="3:1" - android:layout_marginEnd="40dp" - app:layout_constraintTop_toTopOf="@id/cl_voice4" - android:id="@+id/cl_voice5" - android:layout_marginStart="4dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:id="@+id/cl_voice5_real" - android:visibility="gone" - android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:background="@drawable/selector_bg_voice"> - <ImageView - android:id="@+id/iv1_5" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/yuyin" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:layout_marginStart="25dp"/> - <ImageView - android:id="@+id/iv2_5" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/play" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - android:layout_marginEnd="23dp"/> - <ImageView - android:id="@+id/iv_playing_5" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:visibility="gone" - android:src="@mipmap/bofangzhong" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="0dp" - android:layout_height="0dp" - app:layout_constraintStart_toStartOf="@id/cl_6" - app:layout_constraintEnd_toEndOf="@id/cl_6" - app:layout_constraintDimensionRatio="3:1" - android:layout_marginEnd="40dp" - app:layout_constraintTop_toTopOf="@id/cl_voice4" - android:id="@+id/cl_voice6" - android:layout_marginStart="4dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:id="@+id/cl_voice6_real" - android:visibility="gone" - android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:background="@drawable/selector_bg_voice"> - <ImageView - android:id="@+id/iv1_6" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/yuyin" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - android:layout_marginStart="25dp"/> - <ImageView - android:id="@+id/iv2_6" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_marginVertical="6dp" - android:src="@mipmap/play" - app:layout_constraintTop_toTopOf="parent" - android:layout_marginEnd="23dp" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" /> - <ImageView - android:id="@+id/iv_playing_6" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:visibility="gone" - android:src="@mipmap/bofangzhong" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> <com.facebook.drawee.view.SimpleDraweeView - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" android:id="@+id/iv_answer_3" app:failureImage="@null" app:layout_constraintStart_toStartOf="@id/cl_answer_3" @@ -467,8 +445,8 @@ app:roundedCornerRadius="8dp"/> <com.facebook.drawee.view.SimpleDraweeView - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" android:id="@+id/iv_answer_2" app:failureImage="@null" android:elevation="2dp" @@ -478,8 +456,8 @@ app:roundedCornerRadius="8dp"/> <com.facebook.drawee.view.SimpleDraweeView - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" android:id="@+id/iv_answer_1" android:elevation="2dp" app:actualImageScaleType="centerCrop" @@ -489,14 +467,14 @@ app:roundedCornerRadius="8dp"/> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" android:id="@+id/cl_answer_3" app:layout_constraintEnd_toEndOf="@id/cl_3" android:elevation="2dp" app:layout_constraintTop_toBottomOf="@id/cl_3" android:layout_marginEnd="23dp" - android:layout_marginTop="6dp"> + android:layout_marginTop="16dp"> <ImageView android:id="@+id/iv_error_3" android:layout_width="42dp" @@ -519,14 +497,14 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" android:id="@+id/cl_answer_2" android:elevation="2dp" app:layout_constraintEnd_toStartOf="@id/cl_answer_3" app:layout_constraintTop_toBottomOf="@id/cl_3" android:layout_marginEnd="5dp" - android:layout_marginTop="6dp"> + android:layout_marginTop="16dp"> <ImageView android:id="@+id/iv_error_2" android:layout_width="42dp" @@ -549,14 +527,14 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" android:id="@+id/cl_answer_1" android:elevation="2dp" app:layout_constraintEnd_toStartOf="@id/cl_answer_2" app:layout_constraintTop_toBottomOf="@id/cl_3" android:layout_marginEnd="5dp" - android:layout_marginTop="6dp"> + android:layout_marginTop="16dp"> <ImageView android:id="@+id/iv_error_1" android:layout_width="42dp" diff --git a/app/src/main/res/layout/fragment_listen.xml b/app/src/main/res/layout/fragment_listen.xml index 5f7972d..fd483d0 100644 --- a/app/src/main/res/layout/fragment_listen.xml +++ b/app/src/main/res/layout/fragment_listen.xml @@ -31,7 +31,7 @@ <View android:layout_width="match_parent" android:layout_height="40dp" - android:background="@color/page_bg" + android:background="@color/white" android:id="@+id/top_1" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView @@ -62,7 +62,7 @@ android:layout_width="match_parent" android:layout_height="40dp" android:id="@+id/top_2" - android:background="@color/page_bg" + android:background="@color/white" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -92,7 +92,7 @@ android:layout_width="match_parent" android:layout_height="40dp" android:id="@+id/top_3" - android:background="@color/page_bg" + android:background="@color/white" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -126,7 +126,7 @@ android:layout_width="match_parent" android:layout_height="40dp" android:id="@+id/top_4" - android:background="@color/page_bg" + android:background="@color/white" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -141,15 +141,15 @@ </androidx.constraintlayout.motion.widget.MotionLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="230dp" + android:layout_height="40dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="24dp" android:elevation="2dp" android:id="@+id/cl_voice" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <androidx.constraintlayout.widget.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" @@ -160,7 +160,7 @@ android:id="@+id/iv1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@id/center_v" @@ -169,7 +169,7 @@ android:id="@+id/iv2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/center_v" @@ -179,7 +179,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/app/src/main/res/layout/fragment_match.xml b/app/src/main/res/layout/fragment_match.xml index 9e2f596..11baaca 100644 --- a/app/src/main/res/layout/fragment_match.xml +++ b/app/src/main/res/layout/fragment_match.xml @@ -16,25 +16,25 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/line1" - app:layout_constraintGuide_percent="0.2" + app:layout_constraintGuide_percent="0.15" android:orientation="vertical"/> <androidx.constraintlayout.widget.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/line2" - app:layout_constraintGuide_percent="0.4" + app:layout_constraintGuide_percent="0.38" android:orientation="vertical"/> <androidx.constraintlayout.widget.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/line3" - app:layout_constraintGuide_percent="0.6" + app:layout_constraintGuide_percent="0.62" android:orientation="vertical"/> <androidx.constraintlayout.widget.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/line4" - app:layout_constraintGuide_percent="0.8" + app:layout_constraintGuide_percent="0.85" android:orientation="vertical"/> <TextView android:layout_width="match_parent" @@ -44,6 +44,7 @@ app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="70dp" android:textSize="16sp" + android:visibility="gone" android:textColor="@color/black" android:textStyle="bold"/> <androidx.constraintlayout.motion.widget.MotionLayout @@ -65,7 +66,7 @@ <View android:layout_width="match_parent" android:layout_height="40dp" - android:background="@color/page_bg" + android:background="@color/match_gray" android:id="@+id/top_1" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView @@ -91,25 +92,25 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:id="@+id/cl_voice_end_1" - android:background="@color/colorPrimary" + android:background="@color/white" android:visibility="gone" android:layout_height="match_parent"> <ImageView android:id="@+id/iv1_1_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_1_end" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_1_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_1_end" @@ -119,7 +120,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -145,7 +146,7 @@ android:layout_width="match_parent" android:layout_height="40dp" android:id="@+id/top_2" - android:background="@color/page_bg" + android:background="@color/match_gray" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -169,25 +170,25 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:id="@+id/cl_voice_end_2" - android:background="@color/colorPrimary" + android:background="@color/white" android:visibility="gone" android:layout_height="match_parent"> <ImageView android:id="@+id/iv1_2_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_2_end" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_2_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_2_end" @@ -197,7 +198,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -224,7 +225,7 @@ android:layout_width="match_parent" android:layout_height="40dp" android:id="@+id/top_3" - android:background="@color/page_bg" + android:background="@color/match_gray" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -255,25 +256,25 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:id="@+id/cl_voice_end_3" - android:background="@color/colorPrimary" + android:background="@color/white" android:visibility="gone" android:layout_height="match_parent"> <ImageView android:id="@+id/iv1_3_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_3_end" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_3_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_3_end" @@ -283,7 +284,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -309,7 +310,7 @@ android:layout_width="match_parent" android:layout_height="40dp" android:id="@+id/top_4" - android:background="@color/page_bg" + android:background="@color/match_gray" app:layout_constraintTop_toTopOf="parent"/> <com.facebook.drawee.view.SimpleDraweeView android:layout_width="match_parent" @@ -336,25 +337,25 @@ <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:id="@+id/cl_voice_end_4" - android:background="@color/colorPrimary" + android:background="@color/white" android:visibility="gone" android:layout_height="match_parent"> <ImageView android:id="@+id/iv1_4_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_4_end" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_4_end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_4_end" @@ -364,7 +365,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -375,30 +376,30 @@ </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="200dp" + android:layout_height="40dp" app:layout_constraintTop_toTopOf="parent" android:id="@+id/cl_voice_1" app:layout_constraintStart_toStartOf="@id/line1" app:layout_constraintEnd_toEndOf="@id/line1" android:layout_marginTop="15dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_1" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_1" @@ -407,7 +408,7 @@ android:id="@+id/iv_playing_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="invisible" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" @@ -415,30 +416,30 @@ app:layout_constraintStart_toStartOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="200dp" + android:layout_height="40dp" app:layout_constraintTop_toTopOf="parent" android:id="@+id/cl_voice_2" app:layout_constraintStart_toStartOf="@id/line2" app:layout_constraintEnd_toEndOf="@id/line2" android:layout_marginTop="15dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_2" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_2" @@ -448,37 +449,37 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="200dp" + android:layout_height="40dp" app:layout_constraintTop_toTopOf="parent" android:id="@+id/cl_voice_3" app:layout_constraintStart_toStartOf="@id/line3" app:layout_constraintEnd_toEndOf="@id/line3" android:layout_marginTop="15dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_3" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_3" @@ -488,38 +489,38 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="200dp" + android:layout_height="40dp" app:layout_constraintTop_toTopOf="parent" android:id="@+id/cl_voice_4" app:layout_constraintStart_toStartOf="@id/line4" app:layout_constraintEnd_toEndOf="@id/line4" android:layout_marginTop="15dp" - android:background="@drawable/bg_blue_8dp"> + android:background="@drawable/bg_white_8dp"> <ImageView android:id="@+id/iv1_4" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/iv2_4" app:layout_constraintHorizontal_chainStyle="packed" - android:layout_marginEnd="52dp"/> + android:layout_marginEnd="40dp"/> <ImageView android:id="@+id/iv2_4" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@id/iv1_4" @@ -529,7 +530,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -537,12 +538,12 @@ </androidx.constraintlayout.widget.ConstraintLayout> <LinearLayout android:id="@+id/ll_2" - android:layout_width="159dp" + android:layout_width="200dp" android:layout_marginTop="15dp" app:layout_constraintStart_toStartOf="@id/line2" app:layout_constraintEnd_toStartOf="@id/line2" app:layout_constraintTop_toTopOf="parent" - android:layout_height="52dp"> + android:layout_height="40dp"> <View android:layout_width="match_parent" android:layout_height="match_parent" @@ -552,12 +553,12 @@ </LinearLayout> <LinearLayout android:id="@+id/ll_3" - android:layout_width="159dp" + android:layout_width="200dp" android:layout_marginTop="15dp" app:layout_constraintStart_toStartOf="@id/line3" app:layout_constraintEnd_toStartOf="@id/line3" app:layout_constraintTop_toTopOf="parent" - android:layout_height="52dp"> + android:layout_height="40dp"> <View android:layout_width="match_parent" android:layout_height="match_parent" @@ -567,12 +568,12 @@ </LinearLayout> <LinearLayout android:id="@+id/ll_4" - android:layout_width="159dp" + android:layout_width="200dp" android:layout_marginTop="15dp" app:layout_constraintStart_toStartOf="@id/line4" app:layout_constraintEnd_toStartOf="@id/line4" app:layout_constraintTop_toTopOf="parent" - android:layout_height="52dp"> + android:layout_height="40dp"> <View android:layout_width="match_parent" android:layout_height="match_parent" @@ -582,12 +583,12 @@ </LinearLayout> <LinearLayout android:id="@+id/ll_1" - android:layout_width="159dp" + android:layout_width="200dp" android:layout_marginTop="15dp" app:layout_constraintStart_toStartOf="@id/line1" app:layout_constraintEnd_toStartOf="@id/line1" app:layout_constraintTop_toTopOf="parent" - android:layout_height="52dp"> + android:layout_height="40dp"> <View android:layout_width="match_parent" android:layout_height="match_parent" diff --git a/app/src/main/res/layout/fragment_q_a.xml b/app/src/main/res/layout/fragment_q_a.xml index 8baaa2e..ba664ba 100644 --- a/app/src/main/res/layout/fragment_q_a.xml +++ b/app/src/main/res/layout/fragment_q_a.xml @@ -13,20 +13,59 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> + + <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/cl_1" + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_marginTop="96dp" + android:layout_marginEnd="30dp" + android:layout_marginBottom="8dp" + android:background="@drawable/bg_white_8dp" + android:padding="4dp" + app:layout_constraintBottom_toTopOf="@id/cl_3" + app:layout_constraintDimensionRatio="341:244" + app:layout_constraintEnd_toStartOf="@id/center" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintVertical_chainStyle="packed"> + + <com.facebook.drawee.view.SimpleDraweeView + android:id="@+id/iv_1" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_marginTop="40dp" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + <ImageView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/iv_right_1" + android:src="@mipmap/successs" + android:visibility="gone" + android:layout_marginTop="30dp" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent"/> + + </androidx.constraintlayout.widget.ConstraintLayout> + <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_voice_1" - android:layout_width="159dp" - android:layout_height="52dp" - android:layout_marginTop="24dp" - android:background="@drawable/bg_blue_8dp" + android:layout_width="0dp" + android:layout_height="40dp" + android:background="@drawable/bg_white_8dp" + app:layout_constraintTop_toTopOf="@id/cl_1" app:layout_constraintStart_toStartOf="@id/cl_1" - app:layout_constraintTop_toTopOf="parent"> + app:layout_constraintEnd_toEndOf="@id/cl_1" + android:layout_margin="4dp"> <ImageView android:id="@+id/iv1_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -37,7 +76,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="20dp" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -47,7 +86,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" - android:src="@mipmap/voice_question" + android:src="@mipmap/voice_question_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -56,7 +95,7 @@ android:id="@+id/iv_playing_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -65,57 +104,56 @@ </androidx.constraintlayout.widget.ConstraintLayout> + <androidx.constraintlayout.widget.ConstraintLayout - android:id="@+id/cl_1" + android:id="@+id/cl_3" android:layout_width="0dp" android:layout_height="0dp" - android:layout_marginTop="96dp" - android:layout_marginEnd="30dp" + android:layout_marginTop="10dp" + android:layout_marginEnd="11dp" android:layout_marginBottom="8dp" android:background="@drawable/bg_white_8dp" - android:padding="4dp" - app:layout_constraintBottom_toTopOf="@id/cl_voice_3" - app:layout_constraintDimensionRatio="333:259" - app:layout_constraintEnd_toStartOf="@id/center" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintVertical_chainStyle="packed"> + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintDimensionRatio="341:244" + app:layout_constraintStart_toStartOf="@id/cl_1" + app:layout_constraintTop_toBottomOf="@id/cl_1"> <com.facebook.drawee.view.SimpleDraweeView - android:id="@+id/iv_1" + android:id="@+id/iv_3" android:layout_width="match_parent" android:layout_height="match_parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintTop_toTopOf="parent" /> + android:layout_marginTop="40dp" + app:actualImageScaleType="centerCrop" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" - android:id="@+id/iv_right_1" + android:id="@+id/iv_right_3" android:src="@mipmap/successs" android:visibility="gone" + android:layout_marginTop="30dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent"/> - </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_voice_3" - android:layout_width="159dp" - android:layout_height="52dp" - android:layout_marginTop="8dp" - android:background="@drawable/selector_bg_voice" - app:layout_constraintBottom_toTopOf="@id/cl_3" - app:layout_constraintStart_toStartOf="@id/cl_3" - app:layout_constraintTop_toBottomOf="@id/cl_1"> + android:layout_width="0dp" + android:layout_height="40dp" + app:layout_constraintTop_toTopOf="@id/cl_3" + app:layout_constraintEnd_toEndOf="@id/cl_3" + android:layout_margin="4dp" + android:background="@drawable/selector_bg_white_grey" + app:layout_constraintStart_toStartOf="@id/cl_3"> <ImageView android:id="@+id/iv1_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -126,7 +164,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="20dp" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -136,7 +174,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" - android:src="@mipmap/voice_question" + android:src="@mipmap/voice_question_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -145,7 +183,7 @@ android:id="@+id/iv_playing_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -154,90 +192,6 @@ </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout - android:id="@+id/cl_3" - android:layout_width="0dp" - android:layout_height="0dp" - android:layout_marginTop="10dp" - android:layout_marginEnd="11dp" - android:layout_marginBottom="8dp" - android:background="@drawable/bg_white_8dp" - - android:padding="4dp" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintDimensionRatio="333:259" - app:layout_constraintStart_toStartOf="@id/cl_1" - app:layout_constraintTop_toBottomOf="@id/cl_voice_3"> - - <com.facebook.drawee.view.SimpleDraweeView - android:id="@+id/iv_3" - android:layout_width="match_parent" - android:layout_height="match_parent" - app:actualImageScaleType="centerCrop" /> - - <ImageView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:id="@+id/iv_right_3" - android:src="@mipmap/successs" - android:visibility="gone" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent"/> - </androidx.constraintlayout.widget.ConstraintLayout> - - <androidx.constraintlayout.widget.ConstraintLayout - android:id="@+id/cl_voice_2" - android:layout_width="159dp" - android:layout_height="52dp" - android:layout_marginTop="24dp" - android:background="@drawable/bg_blue_8dp" - app:layout_constraintStart_toStartOf="@id/cl_2" - app:layout_constraintTop_toTopOf="parent"> - - <ImageView - android:id="@+id/iv1_2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:src="@mipmap/yuyin" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <ImageView - android:id="@+id/iv2_2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginEnd="20dp" - android:src="@mipmap/play" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <ImageView - android:id="@+id/iv3_2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginStart="20dp" - android:src="@mipmap/voice_answer" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <ImageView - android:id="@+id/iv_playing_2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" - android:visibility="gone" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - </androidx.constraintlayout.widget.ConstraintLayout> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_2" @@ -248,13 +202,14 @@ android:padding="4dp" app:layout_constraintBottom_toBottomOf="@id/cl_1" - app:layout_constraintDimensionRatio="333:259" + app:layout_constraintDimensionRatio="341:244" app:layout_constraintStart_toEndOf="@id/center" app:layout_constraintTop_toTopOf="@id/cl_1"> <com.facebook.drawee.view.SimpleDraweeView android:id="@+id/iv_2" android:layout_width="match_parent" + android:layout_marginTop="40dp" android:layout_height="match_parent" app:actualImageScaleType="centerCrop" /> @@ -263,12 +218,67 @@ android:layout_height="wrap_content" android:id="@+id/iv_right_2" android:src="@mipmap/successs" + android:layout_marginTop="30dp" android:visibility="gone" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent"/> </androidx.constraintlayout.widget.ConstraintLayout> + + <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/cl_voice_2" + android:layout_width="0dp" + android:layout_height="40dp" + android:background="@drawable/bg_white_8dp" + app:layout_constraintTop_toTopOf="@id/cl_2" + app:layout_constraintStart_toStartOf="@id/cl_2" + app:layout_constraintEnd_toEndOf="@id/cl_2" + android:layout_margin="4dp"> + + <ImageView + android:id="@+id/iv1_2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@mipmap/yuyin_2" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + <ImageView + android:id="@+id/iv2_2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginEnd="20dp" + android:src="@mipmap/play_2" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + <ImageView + android:id="@+id/iv3_2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginStart="20dp" + android:src="@mipmap/voice_answer_2" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + <ImageView + android:id="@+id/iv_playing_2" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@mipmap/bofangzhong_2" + android:visibility="gone" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + </androidx.constraintlayout.widget.ConstraintLayout> + <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_4" @@ -279,13 +289,14 @@ android:padding="4dp" app:layout_constraintBottom_toBottomOf="@id/cl_3" - app:layout_constraintDimensionRatio="333:259" + app:layout_constraintDimensionRatio="341:244" app:layout_constraintStart_toEndOf="@id/center" app:layout_constraintTop_toTopOf="@id/cl_3"> <com.facebook.drawee.view.SimpleDraweeView android:id="@+id/iv_4" android:layout_width="match_parent" + android:layout_marginTop="40dp" android:layout_height="match_parent" app:actualImageScaleType="centerCrop" /> @@ -295,26 +306,28 @@ android:id="@+id/iv_right_4" android:src="@mipmap/successs" android:visibility="gone" + android:layout_marginTop="30dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent"/> </androidx.constraintlayout.widget.ConstraintLayout> - <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_voice_4" - android:layout_width="159dp" - android:layout_height="52dp" - android:background="@drawable/selector_bg_voice" + android:layout_width="0dp" app:layout_constraintStart_toStartOf="@id/cl_4" - app:layout_constraintTop_toTopOf="@id/cl_voice_3"> + app:layout_constraintEnd_toEndOf="@id/cl_4" + android:layout_height="40dp" + android:background="@drawable/selector_bg_white_grey" + app:layout_constraintTop_toTopOf="@id/cl_4" + android:layout_margin="4dp"> <ImageView android:id="@+id/iv1_4" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -325,7 +338,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="20dp" - android:src="@mipmap/play" + android:src="@mipmap/play_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -335,7 +348,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" - android:src="@mipmap/voice_answer" + android:src="@mipmap/voice_answer_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -344,7 +357,7 @@ android:id="@+id/iv_playing_4" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -353,10 +366,11 @@ </androidx.constraintlayout.widget.ConstraintLayout> + <View android:id="@+id/position_2" - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="180dp" + android:layout_height="40dp" android:layout_marginEnd="72dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -364,8 +378,8 @@ <View android:id="@+id/position_1" - android:layout_width="159dp" - android:layout_height="52dp" + android:layout_width="180dp" + android:layout_height="40dp" android:layout_marginEnd="72dp" android:layout_marginBottom="40dp" app:layout_constraintBottom_toTopOf="@id/position_2" @@ -373,19 +387,19 @@ <View android:id="@+id/position_3" - android:layout_width="159dp" - android:layout_height="52dp" - android:layout_marginTop="40dp" + android:layout_width="180dp" + android:layout_height="40dp" android:layout_marginEnd="72dp" + android:layout_marginTop="40dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/position_2" /> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_answer_1" - android:layout_width="159dp" - android:layout_height="52dp" - android:background="@drawable/bg_blue_8dp" + android:layout_width="180dp" + android:layout_height="40dp" + android:background="@drawable/bg_white_8dp" android:visibility="gone" app:layout_constraintStart_toStartOf="@id/position_1" app:layout_constraintTop_toTopOf="@id/position_1"> @@ -394,7 +408,7 @@ android:id="@+id/iv1_answer_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -405,7 +419,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" - android:src="@mipmap/voice_answer" + android:src="@mipmap/voice_answer_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -414,7 +428,7 @@ android:id="@+id/iv_playing_answer_1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -435,9 +449,9 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_answer_2" - android:layout_width="159dp" - android:layout_height="52dp" - android:background="@drawable/bg_blue_8dp" + android:layout_width="180dp" + android:layout_height="40dp" + android:background="@drawable/bg_white_8dp" android:visibility="gone" app:layout_constraintStart_toStartOf="@id/position_2" app:layout_constraintTop_toTopOf="@id/position_2"> @@ -446,7 +460,7 @@ android:id="@+id/iv1_answer_2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -457,7 +471,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" - android:src="@mipmap/voice_answer" + android:src="@mipmap/voice_answer_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -466,7 +480,7 @@ android:id="@+id/iv_playing_answer_2" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -488,9 +502,9 @@ <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/cl_answer_3" - android:layout_width="159dp" - android:layout_height="52dp" - android:background="@drawable/bg_blue_8dp" + android:layout_width="180dp" + android:layout_height="40dp" + android:background="@drawable/bg_white_8dp" android:visibility="gone" app:layout_constraintStart_toStartOf="@id/position_3" app:layout_constraintTop_toTopOf="@id/position_3"> @@ -499,7 +513,7 @@ android:id="@+id/iv1_answer_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/yuyin" + android:src="@mipmap/yuyin_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -510,7 +524,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" - android:src="@mipmap/voice_answer" + android:src="@mipmap/voice_answer_2" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -519,7 +533,7 @@ android:id="@+id/iv_playing_answer_3" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@mipmap/bofangzhong" + android:src="@mipmap/bofangzhong_2" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" @@ -549,8 +563,8 @@ <RelativeLayout android:id="@+id/rl_check_1" - android:layout_width="52dp" - android:layout_height="52dp" + android:layout_width="40dp" + android:layout_height="40dp" android:background="@drawable/selector_enable_choose" android:visibility="gone"> @@ -574,8 +588,8 @@ <RelativeLayout android:id="@+id/rl_check_2" - android:layout_width="52dp" - android:layout_height="52dp" + android:layout_width="40dp" + android:layout_height="40dp" android:background="@drawable/selector_enable_choose" android:visibility="gone"> @@ -599,8 +613,8 @@ <RelativeLayout android:id="@+id/rl_check_3" - android:layout_width="52dp" - android:layout_height="52dp" + android:layout_width="40dp" + android:layout_height="40dp" android:background="@drawable/selector_enable_choose" android:visibility="gone"> diff --git a/app/src/main/res/layout/item_index.xml b/app/src/main/res/layout/item_index.xml new file mode 100644 index 0000000..396243d --- /dev/null +++ b/app/src/main/res/layout/item_index.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="28dp" + android:layout_height="25dp" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:background="@color/white"> + <TextView + android:id="@+id/tv_sort" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:text="1" + android:gravity="center" + android:textSize="14sp" + android:textStyle="bold" /> + <View + android:layout_width="1dp" + android:layout_height="match_parent" + app:layout_constraintEnd_toEndOf="parent" + android:id="@+id/line" + android:background="@color/textColor66"/> +</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/app/src/main/res/mipmap-xxhdpi/bofangzhong_2.png b/app/src/main/res/mipmap-xxhdpi/bofangzhong_2.png new file mode 100644 index 0000000..83c9194 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/bofangzhong_2.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/play_2.png b/app/src/main/res/mipmap-xxhdpi/play_2.png new file mode 100644 index 0000000..9a87185 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/play_2.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/voice_answer_2.png b/app/src/main/res/mipmap-xxhdpi/voice_answer_2.png new file mode 100644 index 0000000..b1bf021 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/voice_answer_2.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/voice_question_2.png b/app/src/main/res/mipmap-xxhdpi/voice_question_2.png new file mode 100644 index 0000000..b3bf018 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/voice_question_2.png Binary files differ diff --git a/app/src/main/res/mipmap-xxhdpi/yuyin_2.png b/app/src/main/res/mipmap-xxhdpi/yuyin_2.png new file mode 100644 index 0000000..6262068 --- /dev/null +++ b/app/src/main/res/mipmap-xxhdpi/yuyin_2.png Binary files differ diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index bfd1865..aad8fa7 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -22,4 +22,5 @@ <color name="colorLittleBlue">#F4FAFE</color> <color name="dkplayer_theme_color">@color/colorAccent</color> <color name="page_bg">#C3BFB3</color> + <color name="match_gray">#D4D2CD</color> </resources> diff --git a/app/src/main/res/xml/fragment_include_scene.xml b/app/src/main/res/xml/fragment_include_scene.xml index 99a4f79..5cb19da 100644 --- a/app/src/main/res/xml/fragment_include_scene.xml +++ b/app/src/main/res/xml/fragment_include_scene.xml @@ -13,24 +13,24 @@ <ConstraintSet android:id="@+id/start_1"> <Constraint android:id="@+id/iv_answer_1" - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" motion:layout_constraintStart_toStartOf="@+id/cl_answer_1" motion:layout_constraintTop_toTopOf="@+id/cl_answer_1" /> </ConstraintSet> <ConstraintSet android:id="@+id/start_2"> <Constraint android:id="@+id/iv_answer_2" - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" motion:layout_constraintStart_toStartOf="@+id/cl_answer_2" motion:layout_constraintTop_toTopOf="@+id/cl_answer_2" /> </ConstraintSet> <ConstraintSet android:id="@+id/start_3"> <Constraint android:id="@+id/iv_answer_3" - android:layout_width="85dp" - android:layout_height="52dp" + android:layout_width="96dp" + android:layout_height="60dp" motion:layout_constraintStart_toStartOf="@+id/cl_answer_3" motion:layout_constraintTop_toTopOf="@+id/cl_answer_3" /> </ConstraintSet> @@ -44,7 +44,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_3" motion:layout_constraintBottom_toBottomOf="@+id/cl_3" motion:layout_constraintTop_toTopOf="@+id/cl_3" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -58,7 +58,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_5" motion:layout_constraintBottom_toBottomOf="@+id/cl_5" motion:layout_constraintTop_toTopOf="@+id/cl_5" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -72,7 +72,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_6" motion:layout_constraintBottom_toBottomOf="@+id/cl_6" motion:layout_constraintTop_toTopOf="@+id/cl_6" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -87,7 +87,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_3" motion:layout_constraintBottom_toBottomOf="@+id/cl_3" motion:layout_constraintTop_toTopOf="@+id/cl_3" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -101,7 +101,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_5" motion:layout_constraintBottom_toBottomOf="@+id/cl_5" motion:layout_constraintTop_toTopOf="@+id/cl_5" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -115,7 +115,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_6" motion:layout_constraintBottom_toBottomOf="@+id/cl_6" motion:layout_constraintTop_toTopOf="@+id/cl_6" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -130,7 +130,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_3" motion:layout_constraintBottom_toBottomOf="@+id/cl_3" motion:layout_constraintTop_toTopOf="@+id/cl_3" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -144,7 +144,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_5" motion:layout_constraintBottom_toBottomOf="@+id/cl_5" motion:layout_constraintTop_toTopOf="@+id/cl_5" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> @@ -158,7 +158,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_6" motion:layout_constraintBottom_toBottomOf="@+id/cl_6" motion:layout_constraintTop_toTopOf="@+id/cl_6" - android:layout_marginTop="4dp" + android:layout_marginTop="44dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_marginBottom="4dp"/> diff --git a/app/src/main/res/xml/scene_fragment_choose_voice.xml b/app/src/main/res/xml/scene_fragment_choose_voice.xml index c9115e0..266a53c 100644 --- a/app/src/main/res/xml/scene_fragment_choose_voice.xml +++ b/app/src/main/res/xml/scene_fragment_choose_voice.xml @@ -17,27 +17,27 @@ <Constraint android:id="@+id/cl_voice1" motion:layout_constraintStart_toStartOf="@+id/rl_1" motion:layout_constraintTop_toTopOf="parent" - android:layout_width="159dp" + android:layout_width="230dp" android:layout_marginTop="24dp" - android:layout_height="52dp"/> + android:layout_height="40dp"/> </ConstraintSet> <ConstraintSet android:id="@+id/start_2"> <Constraint android:id="@+id/cl_voice2" motion:layout_constraintStart_toStartOf="@+id/rl_2" motion:layout_constraintTop_toTopOf="parent" - android:layout_width="159dp" + android:layout_width="230dp" android:layout_marginTop="24dp" - android:layout_height="52dp"/> + android:layout_height="40dp"/> </ConstraintSet> <ConstraintSet android:id="@+id/start_3"> <Constraint android:id="@+id/cl_voice3" motion:layout_constraintStart_toStartOf="@+id/rl_3" motion:layout_constraintTop_toTopOf="parent" - android:layout_width="159dp" + android:layout_width="230dp" android:layout_marginTop="24dp" - android:layout_height="52dp"/> + android:layout_height="40dp"/> </ConstraintSet> <ConstraintSet android:id="@+id/end_1_1"> @@ -45,7 +45,7 @@ motion:layout_constraintStart_toStartOf="@+id/cl_1" motion:layout_constraintEnd_toEndOf="@+id/cl_1" motion:layout_constraintTop_toTopOf="@+id/cl_1" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_width="0dp" @@ -58,7 +58,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_2" motion:layout_constraintTop_toTopOf="@+id/cl_2" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -70,7 +70,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_3" motion:layout_constraintTop_toTopOf="@+id/cl_3" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -82,7 +82,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_4" motion:layout_constraintTop_toTopOf="@+id/cl_4" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -93,7 +93,7 @@ motion:layout_constraintStart_toStartOf="@+id/cl_1" motion:layout_constraintEnd_toEndOf="@+id/cl_1" motion:layout_constraintTop_toTopOf="@+id/cl_1" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_width="0dp" @@ -106,7 +106,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_2" motion:layout_constraintTop_toTopOf="@+id/cl_2" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -118,7 +118,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_3" motion:layout_constraintTop_toTopOf="@+id/cl_3" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -130,7 +130,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_4" motion:layout_constraintTop_toTopOf="@+id/cl_4" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -141,7 +141,7 @@ motion:layout_constraintStart_toStartOf="@+id/cl_1" motion:layout_constraintEnd_toEndOf="@+id/cl_1" motion:layout_constraintTop_toTopOf="@+id/cl_1" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_width="0dp" @@ -154,7 +154,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_2" motion:layout_constraintTop_toTopOf="@+id/cl_2" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -166,7 +166,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_3" motion:layout_constraintTop_toTopOf="@+id/cl_3" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> @@ -178,7 +178,7 @@ motion:layout_constraintEnd_toEndOf="@+id/cl_4" motion:layout_constraintTop_toTopOf="@+id/cl_4" android:layout_width="0dp" - android:layout_marginTop="4dp" + android:layout_marginTop="8dp" android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:layout_height="40dp"/> diff --git a/app/src/main/res/xml/scene_fragment_listen_voice.xml b/app/src/main/res/xml/scene_fragment_listen_voice.xml index 324c1b0..305c9b4 100644 --- a/app/src/main/res/xml/scene_fragment_listen_voice.xml +++ b/app/src/main/res/xml/scene_fragment_listen_voice.xml @@ -18,9 +18,9 @@ motion:layout_constraintStart_toStartOf="parent" motion:layout_constraintEnd_toEndOf="parent" motion:layout_constraintTop_toTopOf="parent" - android:layout_width="159dp" + android:layout_width="230dp" android:layout_marginTop="24dp" - android:layout_height="52dp"/> + android:layout_height="40dp"/> </ConstraintSet> <ConstraintSet android:id="@+id/end_1"> diff --git a/build.gradle b/build.gradle index c9fc4d9..cb58e0a 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,8 @@ ext.retrofit_version = '2.3.0' repositories { google() - jcenter() + mavenCentral() + maven { url 'https://maven.aliyun.com/repository/jcenter/' } maven { url 'https://jitpack.io' } } dependencies { @@ -22,7 +23,8 @@ allprojects { repositories { google() - jcenter() + mavenCentral() + maven { url 'https://maven.aliyun.com/repository/jcenter/' } maven { url 'https://jitpack.io' } // 支付宝 SDK AAR 包所需的配置 flatDir { diff --git a/xldutils-kotlin/src/main/res/values/colors.xml b/xldutils-kotlin/src/main/res/values/colors.xml index 3366c60..251d2af 100644 --- a/xldutils-kotlin/src/main/res/values/colors.xml +++ b/xldutils-kotlin/src/main/res/values/colors.xml @@ -24,7 +24,7 @@ <color name="colorOrange">#E37324</color> <color name="colorYellow">#FF9803</color> <color name="colorDeepGreen">#256D0F</color> - <color name="textColorGreen">#6CC366</color> + <color name="textColorGreen">#52C41A</color> <color name="colorGreen">#CBDCC5</color> <color name="colorDark">#000000</color> <color name="colorPink">#FCD8D8</color> -- Gitblit v1.7.1