123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239 |
- package com.epson.mobilephone.common.guide;
- import android.content.Intent;
- import android.content.res.Configuration;
- import android.os.Bundle;
- import android.preference.PreferenceManager;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.Button;
- import android.widget.ImageView;
- import android.widget.LinearLayout;
- import android.widget.TextView;
- import androidx.annotation.NonNull;
- import androidx.appcompat.app.AppCompatActivity;
- import androidx.fragment.app.Fragment;
- import androidx.fragment.app.FragmentManager;
- import androidx.fragment.app.FragmentStatePagerAdapter;
- import androidx.viewpager.widget.ViewPager;
- import java.util.ArrayList;
- import java.util.Locale;
- import epson.print.R;
- /**
- * 新手引导页
- */
- public class NoticeGuideActivity extends AppCompatActivity implements GuideWebviewFragment.MyClickListener {
- public static int DIALOG_MODE_OFF = 20001;
- public static int DIALOG_MODE_ON = 20000;
- public static int DIALOG_MODE_ONLY_BUTTON = 20002;
- public static String KEY_BOOT_GROUP = "BOOT_GROUP";
- public static String KEY_BOOT_MODE = "BOOT_MODE";
- public static String KEY_DIALOG_BUTTON_NO = "DIALOG_NO";
- public static String KEY_DIALOG_BUTTON_YES = "DIALOG_YES";
- public static String KEY_DIALOG_MODE = "DIALOG_MODE";
- public static String KEY_DIALOG_TITLE = "DIALOG_TITLE";
- public static String KEY_GUIDE_VER = "GUIDE_VER";
- public static String KEY_HTML_PATH = "HTML_PATH";
- public static int MODE_AUTO = 10001;
- public static int MODE_MANUAL = 10000;
- public String SP_KEY_GUIDE_VER = "GuideVersion";
- private String boot_group;
- private int boot_mode;
- private int dialog_mode;
- private ArrayList<String> htmlpath = new ArrayList<>();
- private MyFragmentStatePagerAdapter mAdapter;
- private Button mCancel;
- private String mDialogButtonNo = "";
- private String mDialogButtonYes = "";
- private TextView mDialogText;
- private String mDialogTextMessage = "";
- private View mGrayLine_Hor;
- private LinearLayout mGuideDialogView;
- private Button mOK;
- private LinearLayout mPageDisplayView;
- private MyViewPager mViewPager;
- private int version;
- protected void onCreate(Bundle bundle) {
- String str;
- super.onCreate(bundle);
- setContentView(R.layout.activity_notice_guide);
- Intent intent = getIntent();
- if (intent != null) {
- htmlpath = intent.getStringArrayListExtra(KEY_HTML_PATH);
- if (htmlpath.size() == 0) {
- finish();
- }
- boot_mode = intent.getIntExtra(KEY_BOOT_MODE, 0);
- boot_group = intent.getStringExtra(KEY_BOOT_GROUP);
- dialog_mode = intent.getIntExtra(KEY_DIALOG_MODE, 0);
- version = intent.getIntExtra(KEY_GUIDE_VER, 0);
- mDialogTextMessage = intent.getStringExtra(KEY_DIALOG_TITLE);
- mDialogButtonYes = intent.getStringExtra(KEY_DIALOG_BUTTON_YES);
- mDialogButtonNo = intent.getStringExtra(KEY_DIALOG_BUTTON_NO);
- if (boot_group != null) {
- SP_KEY_GUIDE_VER += "-" + boot_group;
- }
- }
- if (boot_mode == MODE_AUTO) {
- if (version <= PreferenceManager.getDefaultSharedPreferences(this).getInt(SP_KEY_GUIDE_VER, 0)) {
- finish();
- }
- }
- final MyPageAdapter myPageAdapter = new MyPageAdapter();
- mAdapter = new MyFragmentStatePagerAdapter(getSupportFragmentManager(), htmlpath);
- mViewPager = (MyViewPager) findViewById(R.id.guideViewPager);
- mViewPager.setAdapter(mAdapter);
- mViewPager.setOffscreenPageLimit(2);
- mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
- public void onPageScrollStateChanged(int i) {
- }
- public void onPageScrolled(int i, float f, int i2) {
- }
- public void onPageSelected(int i) {
- myPageAdapter.changePage(i);
- }
- });
- mPageDisplayView = (LinearLayout) findViewById(R.id.pageDisplayViewGroup);
- myPageAdapter.setPageSize(mPageDisplayView, mAdapter.getCount());
- myPageAdapter.changePage(mViewPager.getCurrentItem());
- mGuideDialogView = (LinearLayout) findViewById(R.id.guide_dialog_layout);
- mGrayLine_Hor = findViewById(R.id.guide_dialog_horizon_gray_line);
- mDialogText = (TextView) findViewById(R.id.guide_dialog_message);
- int i = dialog_mode;
- if (i == DIALOG_MODE_ON || i == DIALOG_MODE_ONLY_BUTTON) {
- mGuideDialogView.setVisibility(View.VISIBLE);
- ViewGroup.MarginLayoutParams marginLayoutParams = (ViewGroup.MarginLayoutParams) mGuideDialogView.getLayoutParams();
- marginLayoutParams.width = (int) Utils.dptopx(Utils.getWebViewDP(this, getApplicationContext()) + Utils.LAYOUT_MEARGIN, getApplicationContext());
- mGuideDialogView.setLayoutParams(marginLayoutParams);
- mOK = (Button) findViewById(R.id.ok_button);
- mCancel = (Button) findViewById(R.id.cancel_btn);
- String str2 = mDialogButtonYes;
- if (str2 != null) {
- mOK.setText(str2);
- }
- String str3 = mDialogButtonNo;
- if (str3 != null) {
- mCancel.setText(str3);
- }
- mOK.setOnClickListener(new View.OnClickListener() {
- public void onClick(View view) {
- setResult(-1);
- onClickClose();
- }
- });
- mCancel.setOnClickListener(new View.OnClickListener() {
- public void onClick(View view) {
- setResult(0);
- onClickClose();
- }
- });
- if (dialog_mode == DIALOG_MODE_ON && (str = mDialogTextMessage) != null) {
- mDialogText.setText(str);
- }
- if (dialog_mode == DIALOG_MODE_ONLY_BUTTON) {
- mGrayLine_Hor.setVisibility(View.GONE);
- mDialogText.setVisibility(View.GONE);
- mOK.setBackground(getResources().getDrawable(R.drawable.rectangle_left_button));
- mCancel.setBackground(getResources().getDrawable(R.drawable.rectangle_right_button));
- }
- }
- }
- public void onBackPressed() {
- onClickClose();
- }
- public void onClickClose() {
- if (boot_mode == MODE_AUTO) {
- PreferenceManager.getDefaultSharedPreferences(this).edit().putInt(SP_KEY_GUIDE_VER, version).apply();
- }
- finish();
- }
- public void onConfigurationChanged(Configuration configuration) {
- switch (configuration.orientation) {
- case 1:
- if (dialog_mode == DIALOG_MODE_ON) {
- mGuideDialogView.setVisibility(View.VISIBLE);
- break;
- }
- break;
- case 2:
- if (dialog_mode == DIALOG_MODE_ON) {
- mGuideDialogView.setVisibility(View.GONE);
- break;
- }
- break;
- }
- super.onConfigurationChanged(configuration);
- }
- public static class MyFragmentStatePagerAdapter extends FragmentStatePagerAdapter {
- private ArrayList<String> HTML_PAGE;
- private int PAGE_LENGTH;
- private MyFragmentStatePagerAdapter(FragmentManager fragmentManager, ArrayList<String> arrayList) {
- super(fragmentManager);
- HTML_PAGE = new ArrayList<>();
- PAGE_LENGTH = 0;
- HTML_PAGE = arrayList;
- PAGE_LENGTH = arrayList.size();
- }
- public Fragment getItem(int i) {
- return GuideWebviewFragment.newInstance(String.format(Locale.US, HTML_PAGE.get(i), new Object[]{Integer.valueOf(i + 1)}));
- }
- public int getCount() {
- return PAGE_LENGTH;
- }
- }
- class MyPageAdapter {
- private ImageView[] mPagePosition;
- private MyPageAdapter() {
- }
- private void setPageSize(@NonNull ViewGroup viewGroup, int i) {
- mPagePosition = new ImageView[i];
- int i2 = 0;
- while (i2 < i) {
- ImageView imageView = new ImageView(getApplicationContext());
- imageView.setImageResource(R.drawable.cycle02);
- int i3 = i2 + 1;
- viewGroup.addView(imageView, i3);
- mPagePosition[i2] = imageView;
- i2 = i3;
- }
- }
- private void changePage(int i) {
- int i2 = 0;
- while (true) {
- ImageView[] imageViewArr = mPagePosition;
- if (i2 < imageViewArr.length) {
- if (imageViewArr[i2] != null) {
- if (i == i2) {
- imageViewArr[i2].setImageResource(R.drawable.cycle03);
- } else {
- imageViewArr[i2].setImageResource(R.drawable.cycle02);
- }
- }
- i2++;
- } else {
- return;
- }
- }
- }
- }
- }
|