package cn.shangyu.gdxzExpert.activity; import android.Manifest; import android.content.Context; import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.text.TextUtils; import android.view.Gravity; import android.view.View; import android.view.View.OnClickListener; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.EditText; import android.widget.RelativeLayout; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; import com.github.dfqin.grantor.PermissionListener; import com.github.dfqin.grantor.PermissionsUtil; import com.gyf.immersionbar.ImmersionBar; import com.hjq.window.EasyWindow; import cn.shangyu.gdxzExpert.R; import cn.shangyu.gdxzExpert.utils.KeDaXunFeiUtil; import cn.shangyu.gdxzExpert.utils.ToastUtil; public class ReplyFeedbackActivity extends AppCompatActivity implements OnClickListener { private EditText mName; public static final int FEED_BACK = 2; private RelativeLayout top_back_layout;// 返回按钮 private TextView top_title, top_right;// 标题 右边的文字 private TextView sub; private Button mBt_get_Voice; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.settting_feed_bac_activity); Toolbar mToolbar=findViewById(R.id.toolbar); ImmersionBar.with(this).keyboardEnable(true).statusBarDarkFont(true).titleBar(mToolbar).init(); top_back_layout = (RelativeLayout) findViewById(R.id.top_back_layout); top_back_layout.setOnClickListener(this); mBt_get_Voice = (Button) findViewById(R.id.bt_get_voice); mBt_get_Voice.setOnClickListener(this); top_title = (TextView) findViewById(R.id.top_title); sub = (TextView) findViewById(R.id.top_right_text); top_title.setText("评论"); sub.setVisibility(View.VISIBLE); sub.setClickable(true); sub.setTextSize(16); sub.setText("确定"); sub.setOnClickListener(this); mName = (EditText) findViewById(R.id.tv_feed_name); String name = getIntent().getStringExtra("name"); mName.setHint("写评论..."); if(getIntent().getType().equals("YY")){ mBt_get_Voice.setVisibility(View.VISIBLE); }else{ mBt_get_Voice.setVisibility(View.GONE); } } @Override public void onClick(View arg0) { // TODO Auto-generated method stub switch (arg0.getId()) { case R.id.top_back_layout: // Intent intent = new Intent(); // intent.putExtra("reply", mName.getText().toString().trim()); // ReplyFeedbackActivity.this.setResult(FEED_BACK, intent); finish(); break; case R.id.top_right_text: View view = getWindow().peekDecorView(); if (view != null) { InputMethodManager inputmanger = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); inputmanger.hideSoftInputFromWindow(view.getWindowToken(), 0); } if (TextUtils.isEmpty(mName.getText().toString().trim())) { ToastUtil.showMessage("您还未输入回复内容"); return; } Intent intent1 = new Intent(); intent1.putExtra("reply", mName.getText().toString().trim()); ReplyFeedbackActivity.this.setResult(FEED_BACK, intent1); finish(); break; case R.id.bt_get_voice: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if (PermissionsUtil.hasPermission(this ,Manifest.permission.RECORD_AUDIO)) { //有访问录音 VoiceUtil=new KeDaXunFeiUtil(ReplyFeedbackActivity.this, mName); } else { EasyWindow.with(ReplyFeedbackActivity.this).setGravity(Gravity.TOP).setYOffset(200).setWidth(1000) .setContentView(R.layout.float_top_dialog_record).show(); PermissionsUtil.requestPermission(this, new PermissionListener() { @Override public void permissionGranted(@NonNull String[] permissions) { EasyWindow.cancelAll(); //用户授予了访问录音的权限 VoiceUtil=new KeDaXunFeiUtil(ReplyFeedbackActivity.this, mName); } @Override public void permissionDenied(@NonNull String[] permissions) { EasyWindow.cancelAll(); //用户拒绝了访问录音的申请 // finish(); } }, new String[]{Manifest.permission.RECORD_AUDIO}); } }else { VoiceUtil=new KeDaXunFeiUtil(ReplyFeedbackActivity.this, mName); } break; default: break; } } KeDaXunFeiUtil VoiceUtil; @Override protected void onDestroy() { // TODO Auto-generated method stub if(VoiceUtil!=null){ VoiceUtil.dissDialog(); } super.onDestroy(); } }