| | |
| | | |
| | | import androidx.fragment.app.Fragment; |
| | | import androidx.fragment.app.FragmentManager; |
| | | import android.graphics.Color; |
| | | |
| | | import android.os.Build; |
| | | import android.os.Bundle; |
| | | import androidx.fragment.app.FragmentTransaction; |
| | | |
| | | import androidx.viewpager.widget.ViewPager; |
| | | |
| | | import android.view.View; |
| | | import android.view.Window; |
| | | import android.view.WindowManager; |
| | | import android.widget.FrameLayout; |
| | | import android.widget.TextView; |
| | | |
| | | import com.google.gson.Gson; |
| | | import com.google.gson.reflect.TypeToken; |
| | | import com.tejia.lijin.app.R; |
| | | import com.tejia.lijin.app.ui.BaseFragmentActivity; |
| | | import com.tejia.lijin.app.ui.gmtemplate.GmTemplateContentFragment; |
| | | import com.tejia.lijin.app.ui.gmtemplate.GmTemplateFragment; |
| | | import com.tejia.lijin.app.util.downutil.StringUtils; |
| | | import com.viewpagerindicator.TabPageIndicatorTrendsMainType; |
| | | |
| | | import java.lang.reflect.Type; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.Map; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 热销商品 |
| | | */ |
| | | public class SellWellGoods extends BaseFragmentActivity implements View.OnClickListener { |
| | | private TextView sellsellgoods_bar_left;//返回 |
| | | private TextView sellsellgoods_bar_realtime;//实时 |
| | | private View sellsellgoods_bar_realtimebottom;//实时底部条 |
| | | private TextView sellsellgoods_bar_today;//今日 |
| | | private View sellsellgoods_bar_todaybottom;//今日底部条 |
| | | private TextView sellsellgoods_bar_sellwell;//热销 |
| | | private View sellsellgoods_bar_sellwellbottom;//热销底部条 |
| | | |
| | | private ViewPager sellsellgoods_bar_viewpager;//viewpage |
| | | private SellWellGoods_TabAdapter adapter; |
| | | |
| | | //导航栏 |
| | | private FrameLayout fl_indicator; |
| | | private TabPageIndicatorTrendsMainType tab_indicator; |
| | | |
| | | /** |
| | | * Tab标题 |
| | | */ |
| | | private ArrayList<Map<String, String>> Title = new ArrayList<>(); |
| | | /** |
| | | * Tab标题 |
| | | */ |
| | | private ArrayList<Fragment> fragments = new ArrayList<>(); |
| | | private List<NavInfo> titles = new ArrayList<>(); |
| | | |
| | | private void initTopMenu() { |
| | | //获取数据 |
| | | String navs = getIntent().getStringExtra("navs"); |
| | | if (!StringUtils.isNullOrEmpty(navs)) { |
| | | navs = navs.replace("\\" + "\"", "\""); |
| | | Type type = new TypeToken<List<NavInfo>>() { |
| | | }.getType(); |
| | | List<NavInfo> navList = new Gson().fromJson(navs, type); |
| | | titles.clear(); |
| | | titles.addAll(navList); |
| | | } |
| | | |
| | | FragmentManager fm = getSupportFragmentManager(); |
| | | adapter = new SellWellGoods_TabAdapter(fm, titles); |
| | | sellsellgoods_bar_viewpager.setAdapter(adapter); |
| | | |
| | | if (tab_indicator == null) { |
| | | tab_indicator = new TabPageIndicatorTrendsMainType(fl_indicator.getContext()); |
| | | tab_indicator.setScaleRate(1.25f); |
| | | } |
| | | tab_indicator.setViewPager(sellsellgoods_bar_viewpager); |
| | | if (fl_indicator.getChildCount() > 0) |
| | | fl_indicator.removeAllViews(); |
| | | fl_indicator.addView(tab_indicator); |
| | | |
| | | |
| | | } |
| | | |
| | | @Override |
| | | protected void onCreate(Bundle savedInstanceState) { |
| | | super.onCreate(savedInstanceState); |
| | | setContentView(R.layout.sellwellgoods); |
| | | setTheme(R.style.AppTabTheme4); |
| | | inint(); |
| | | OnClickListener(); |
| | | initView(); |
| | | //设置状态栏 |
| | | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { |
| | | Window window = getWindow(); |
| | |
| | | //设置状态栏文字颜色及图标为深色 |
| | | getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); |
| | | } |
| | | FragmentManager fm = getSupportFragmentManager(); |
| | | adapter = new SellWellGoods_TabAdapter(fm, Title, fragments); |
| | | sellsellgoods_bar_viewpager.setAdapter(adapter); |
| | | sellsellgoods_bar_viewpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { |
| | | @Override |
| | | public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void onPageSelected(int position) { |
| | | // sellsellgoods_bar_viewpager.setCurrentItem(position); |
| | | Variety(position + 1); |
| | | } |
| | | |
| | | @Override |
| | | public void onPageScrollStateChanged(int state) { |
| | | |
| | | } |
| | | }); |
| | | getsellClass(); |
| | | initTopMenu(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 注册控件 |
| | | */ |
| | | private void inint() { |
| | | private void initView() { |
| | | sellsellgoods_bar_left = findViewById(R.id.sellsellgoods_bar_left); |
| | | sellsellgoods_bar_realtime = findViewById(R.id.sellsellgoods_bar_realtime); |
| | | sellsellgoods_bar_realtimebottom = findViewById(R.id.sellsellgoods_bar_realtimebottom); |
| | | sellsellgoods_bar_today = findViewById(R.id.sellsellgoods_bar_today); |
| | | sellsellgoods_bar_todaybottom = findViewById(R.id.sellsellgoods_bar_todaybottom); |
| | | sellsellgoods_bar_sellwell = findViewById(R.id.sellsellgoods_bar_sellwell); |
| | | sellsellgoods_bar_sellwellbottom = findViewById(R.id.sellsellgoods_bar_sellwellbottom); |
| | | sellsellgoods_bar_viewpager = findViewById(R.id.sellsellgoods_bar_viewpager); |
| | | } |
| | | |
| | | /** |
| | | * 注册监听 |
| | | */ |
| | | private void OnClickListener() { |
| | | fl_indicator = findViewById(R.id.fl_indicator); |
| | | sellsellgoods_bar_left.setOnClickListener(this); |
| | | sellsellgoods_bar_realtime.setOnClickListener(this); |
| | | sellsellgoods_bar_today.setOnClickListener(this); |
| | | sellsellgoods_bar_sellwell.setOnClickListener(this); |
| | | } |
| | | |
| | | |
| | |
| | | case R.id.sellsellgoods_bar_left://返回 |
| | | finish(); |
| | | break; |
| | | case R.id.sellsellgoods_bar_realtime://实时 |
| | | Variety(1); |
| | | // setIndexSelected(0); |
| | | sellsellgoods_bar_viewpager.setCurrentItem(0); |
| | | break; |
| | | case R.id.sellsellgoods_bar_today://今日 |
| | | Variety(2); |
| | | // setIndexSelected(1); |
| | | sellsellgoods_bar_viewpager.setCurrentItem(1); |
| | | break; |
| | | case R.id.sellsellgoods_bar_sellwell://热销 |
| | | Variety(3); |
| | | // setIndexSelected(2); |
| | | sellsellgoods_bar_viewpager.setCurrentItem(2); |
| | | break; |
| | | |
| | | default: |
| | | break; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 改变 titiel |
| | | */ |
| | | private void Variety(int i) { |
| | | sellsellgoods_bar_realtime.setTextColor(i == 1 ? getResources().getColor(R.color.theme): Color.parseColor("#ff333333")); |
| | | sellsellgoods_bar_realtimebottom.setVisibility(i == 1 ? View.VISIBLE : View.GONE); |
| | | sellsellgoods_bar_today.setTextColor(i == 2? getResources().getColor(R.color.theme): Color.parseColor("#ff333333")); |
| | | sellsellgoods_bar_todaybottom.setVisibility(i == 2 ? View.VISIBLE : View.GONE); |
| | | sellsellgoods_bar_sellwell.setTextColor(i == 2? getResources().getColor(R.color.theme): Color.parseColor("#ff333333")); |
| | | sellsellgoods_bar_sellwellbottom.setVisibility(i == 3 ? View.VISIBLE : View.GONE); |
| | | } |
| | | |
| | | /** |
| | | * 获取热销分类 |
| | | */ |
| | | private void getsellClass() { |
| | | //实时 |
| | | RealTimeFragment time_fragment = new RealTimeFragment(); |
| | | //今日 |
| | | TodayFragment today_fragment = new TodayFragment(); |
| | | //热销 |
| | | Sell_Fragment sell_fragment = new Sell_Fragment(); |
| | | fragments.add(time_fragment); |
| | | fragments.add(today_fragment); |
| | | fragments.add(sell_fragment); |
| | | Map<String, String> map = new HashMap<>(); |
| | | map.put("id", "3"); |
| | | map.put("name", "今日"); |
| | | Title.add(map); |
| | | Title.add(map); |
| | | Title.add(map); |
| | | adapter.notifyDataSetChanged(); |
| | | |
| | | //默认设置为第0个 |
| | | // setIndexSelected(0); |
| | | } |
| | | |
| | | private int mIndex = -1; |
| | | |
| | | private void setIndexSelected(int index) { |
| | | |
| | | if (mIndex == index) { |
| | | return; |
| | | } |
| | | FragmentManager fragmentManager = getSupportFragmentManager(); |
| | | FragmentTransaction ft = fragmentManager.beginTransaction(); |
| | | |
| | | |
| | | //隐藏 |
| | | ft.hide(fragments.get(mIndex == -1 ? 0 : mIndex)); |
| | | //判断是否添加 |
| | | if (!fragments.get(index).isAdded()) { |
| | | ft.add(R.id.sellsellgoods_bar_viewpager, fragments.get(index)).show(fragments.get(index)); |
| | | } else { |
| | | ft.show(fragments.get(index)); |
| | | } |
| | | |
| | | ft.commit(); |
| | | //再次赋值 |
| | | mIndex = index; |
| | | } |
| | | |
| | | @Override |
| | |
| | | sellsellgoods_bar_viewpager = null;//viewpage |
| | | adapter = null; |
| | | } |
| | | |
| | | public static class NavInfo { |
| | | |
| | | private String key; |
| | | private String title; |
| | | |
| | | public String getKey() { |
| | | return key; |
| | | } |
| | | |
| | | public void setKey(String key) { |
| | | this.key = key; |
| | | } |
| | | |
| | | public String getTitle() { |
| | | return title; |
| | | } |
| | | |
| | | public void setTitle(String title) { |
| | | this.title = title; |
| | | } |
| | | } |
| | | } |