| | |
| | | |
| | | import androidx.recyclerview.widget.LinearLayoutManager; |
| | | |
| | | import android.content.Intent; |
| | | import android.os.Bundle; |
| | | import android.view.View; |
| | | |
| | | import com.hdl.photovoltaic.HDLApp; |
| | | import com.hdl.photovoltaic.R; |
| | | import com.hdl.photovoltaic.base.CustomBaseActivity; |
| | | import com.hdl.photovoltaic.config.UserConfigManage; |
| | | import com.hdl.photovoltaic.databinding.ActivityLanguageSelectionBinding; |
| | | import com.hdl.photovoltaic.ui.StartActivity; |
| | | import com.hdl.photovoltaic.ui.adapter.LanguageAdapter; |
| | | import com.hdl.photovoltaic.utils.AppManagerUtils; |
| | | import com.hdl.photovoltaic.utils.LocalManageUtil; |
| | | import com.hdl.photovoltaic.widget.ConfirmationCancelDialog; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | |
| | | /** |
| | | * 语言选择的界面 |
| | | */ |
| | | public class languageSelectionActivity extends CustomBaseActivity { |
| | | |
| | | /** |
| | | * 语言选择的界面 |
| | | */ |
| | | private ActivityLanguageSelectionBinding viewBinding; |
| | | |
| | | private LanguageAdapter languageAdapter; |
| | |
| | | } |
| | | |
| | | private void readData() { |
| | | list = new ArrayList<>(); |
| | | LanguageAdapter.ItemData zh = new LanguageAdapter.ItemData(); |
| | | zh.setState(false); |
| | | zh.setTitle("简体中文"); |
| | | list.add(zh); |
| | | LanguageAdapter.ItemData en = new LanguageAdapter.ItemData(); |
| | | en.setState(false); |
| | | en.setTitle("English"); |
| | | list.add(en); |
| | | list = LocalManageUtil.getLanguageList(); |
| | | for (int i = 0; i < list.size(); i++) { |
| | | LanguageAdapter.ItemData itemData = list.get(i); |
| | | if (itemData.getLanguage().equals(UserConfigManage.getInstance().getCurrentAppLanguage())) { |
| | | //初始化之前状态 |
| | | itemData.setState(true); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | |
| | | viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | setResult(30); |
| | | finish(); |
| | | } |
| | | }); |
| | |
| | | languageAdapter.setNoOnclickListener(new LanguageAdapter.OnclickListener() { |
| | | @Override |
| | | public void onClick(int position, LanguageAdapter.ItemData itemData) { |
| | | |
| | | for (int i = 0; i < list.size(); i++) { |
| | | LanguageAdapter.ItemData data = list.get(i); |
| | | data.setState(false); |
| | | } |
| | | list.get(position).setState(true); |
| | | languageAdapter.notifyDataSetChanged(); |
| | | |
| | | if (UserConfigManage.getInstance().getCurrentAppLanguage().equals(itemData.getLanguage())) { |
| | | //同一个不执行弹窗 |
| | | return; |
| | | } |
| | | languageSelectionDialog(itemData); |
| | | |
| | | } |
| | | }); |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 二次确认提示框 |
| | | * |
| | | * @param itemData 选中数据 |
| | | */ |
| | | private void languageSelectionDialog(LanguageAdapter.ItemData itemData) { |
| | | ConfirmationCancelDialog dialog = new ConfirmationCancelDialog(this); |
| | | dialog.setTitle(getString(R.string.loading_title_tip)); |
| | | dialog.setContent(getString(R.string.loading_app_restart)); |
| | | dialog.show(); |
| | | dialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() { |
| | | @Override |
| | | public void Confirm() { |
| | | UserConfigManage.getInstance().setCurrentAppLanguage(itemData.getLanguage()); |
| | | UserConfigManage.getInstance().Save(); |
| | | AppManagerUtils.getAppManager().finishAllActivity(); |
| | | Intent intent = new Intent(); |
| | | intent.setClass(HDLApp.getInstance(), StartActivity.class); |
| | | startActivity(intent); |
| | | } |
| | | }); |
| | | dialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() { |
| | | @Override |
| | | public void Cancel() { |
| | | dialog.dismiss(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | private void initView() { |