package com.example.settinglibrary; import android.annotation.SuppressLint; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.PopupWindow; import android.widget.Switch; import android.widget.TextView; import com.example.datalibrary.activity.BaseActivity; import com.example.datalibrary.utils.PWTextUtils; public class PictureOptimizationActivity extends BaseActivity { private Switch swDarkEnhance; private Switch swBestImage; private Button tipsdarkEnhance; private Button tipsBestImage; private View groupdarkEnhance; private View groupBestImage; private TextView tvdarkEnhance; private TextView tvBestImage; private View groupFundarkEnhance; private String msgTag = ""; private int showWidth; private int showXLocation; private boolean darkEnhance; private boolean bestImage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_picture_optimization); init(); initListener(); } private void init(){ Intent intent = getIntent(); darkEnhance = intent.getBooleanExtra("darkEnhance" , false); bestImage = intent.getBooleanExtra("bestImage" , false); swDarkEnhance = findViewById(R.id.sw_dark_enhance); swBestImage = findViewById(R.id.sw_best_image); // 暗光恢复开关 tipsdarkEnhance = findViewById(R.id.tips_dark_enhance); tvdarkEnhance = findViewById(R.id.tv_dark_enhance); groupdarkEnhance = findViewById(R.id.group_dark_enhance); groupFundarkEnhance = findViewById(R.id.group_fun_dark_enhance); // best image开关 tipsBestImage = findViewById(R.id.tips_best_image); groupBestImage = findViewById(R.id.group_best_image); tvBestImage = findViewById(R.id.tv_best_image); if (darkEnhance) { swDarkEnhance.setChecked(true); } else { swDarkEnhance.setChecked(false); } if (bestImage) { swBestImage.setChecked(true); } else { swBestImage.setChecked(false); } } private void initListener(){ tipsdarkEnhance.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (msgTag.equals(getString(R.string.cw_darkEnhance))) { msgTag = ""; return; } msgTag = getString(R.string.cw_darkEnhance); tipsdarkEnhance.setBackground(getDrawable(R.mipmap.icon_setting_question_hl)); PWTextUtils.showDescribeText(groupFundarkEnhance, tvdarkEnhance, PictureOptimizationActivity.this, getString(R.string.cw_darkEnhance), showWidth, showXLocation); } }); tipsBestImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (msgTag.equals(getString(R.string.cw_bestimage))) { msgTag = ""; return; } msgTag = getString(R.string.cw_bestimage); tipsBestImage.setBackground(getDrawable(R.mipmap.icon_setting_question_hl)); PWTextUtils.showDescribeText(groupBestImage, tvBestImage, PictureOptimizationActivity.this, getString(R.string.cw_bestimage), showWidth, showXLocation); } }); PWTextUtils.setOnDismissListener(new PopupWindow.OnDismissListener() { @SuppressLint("NewApi") @Override public void onDismiss() { tipsBestImage.setBackground(getDrawable(R.mipmap.icon_setting_question)); tipsdarkEnhance.setBackground(getDrawable(R.mipmap.icon_setting_question)); } }); findViewById(R.id.qc_save).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (swDarkEnhance.isChecked()) { darkEnhance = true; } else { darkEnhance = false; } if (swBestImage.isChecked()) { bestImage = true; } else { bestImage = false; } finish(); } }); } @Override public void finish() { Intent intent = new Intent(); intent.putExtra("darkEnhance", darkEnhance); intent.putExtra("bestImage", bestImage); // 设置返回码和返回携带的数据 setResult(Activity.RESULT_OK, intent); super.finish(); } @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); showWidth = groupFundarkEnhance.getWidth(); showXLocation = (int) groupdarkEnhance.getX(); } }