You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
139 lines
4.8 KiB
139 lines
4.8 KiB
package com.example.register.fragment;
|
|
|
|
import android.app.Fragment;
|
|
import android.os.AsyncTask;
|
|
import android.os.Bundle;
|
|
import android.view.LayoutInflater;
|
|
import android.view.View;
|
|
import android.view.ViewGroup;
|
|
import android.widget.GridView;
|
|
import android.widget.LinearLayout;
|
|
import android.widget.SearchView;
|
|
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
|
|
import com.example.register.adapter.ProductAdapter;
|
|
import com.example.register.entity.OrangeProductPack;
|
|
import com.example.register.entity.Product;
|
|
import com.example.register.R;
|
|
import com.example.register.netrequest.OkHttpClientProduct;
|
|
|
|
import java.io.IOException;
|
|
import java.math.BigDecimal;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
public class IndexFragment extends Fragment implements View.OnClickListener {
|
|
private SearchView searchView;
|
|
private LinearLayout meishiLine, houseLine, footLine, dyLine, lyLine, fruitLine, planeLine, ktvLine;
|
|
private GridView gridView;
|
|
private List<Product> productList;
|
|
private ProductAdapter productAdapter;
|
|
private List<OrangeProductPack> list = new ArrayList<>();
|
|
@Nullable
|
|
@Override
|
|
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
|
View view = LayoutInflater.from(getActivity()).inflate(R.layout.content_index, container, false);
|
|
init(view);
|
|
return view;
|
|
}
|
|
|
|
/**
|
|
* 初始化组件
|
|
*/
|
|
private void init(View view) {
|
|
searchView = view.findViewById(R.id.searchView);
|
|
searchView.setOnClickListener(this);
|
|
meishiLine = view.findViewById(R.id.meishi);
|
|
meishiLine.setOnClickListener(this);
|
|
houseLine = view.findViewById(R.id.house);
|
|
houseLine.setOnClickListener(this);
|
|
footLine = view.findViewById(R.id.foot);
|
|
footLine.setOnClickListener(this);
|
|
dyLine = view.findViewById(R.id.dy);
|
|
dyLine.setOnClickListener(this);
|
|
lyLine = view.findViewById(R.id.ly);
|
|
lyLine.setOnClickListener(this);
|
|
fruitLine = view.findViewById(R.id.fruit);
|
|
fruitLine.setOnClickListener(this);
|
|
planeLine = view.findViewById(R.id.plane);
|
|
planeLine.setOnClickListener(this);
|
|
ktvLine = view.findViewById(R.id.sing);
|
|
ktvLine.setOnClickListener(this);
|
|
gridView = view.findViewById(R.id.index_famous_gridview);
|
|
initData();
|
|
//productAdapter = new ProductAdapter(getActivity(), productList);
|
|
//gridView.setAdapter(productAdapter);
|
|
new SearchProductTask().execute();
|
|
}
|
|
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
|
|
}
|
|
|
|
/**
|
|
* 初始化商品数据
|
|
*/
|
|
private void initData() {
|
|
productList = new ArrayList<>();
|
|
Product product = new Product();
|
|
product.setImageUrlId(R.drawable.haoroup);
|
|
product.setProductName("照烧鸡");
|
|
product.setProductPrice(new BigDecimal("19.9"));
|
|
Product product1 = new Product();
|
|
product1.setImageUrlId(R.drawable.juzip);
|
|
product1.setProductName("橘子");
|
|
product1.setProductPrice(new BigDecimal("9.9"));
|
|
Product product2 = new Product();
|
|
product2.setImageUrlId(R.drawable.singp);
|
|
product2.setProductName("KTV");
|
|
product2.setProductPrice(new BigDecimal("19.9"));
|
|
Product product3 = new Product();
|
|
product3.setImageUrlId(R.drawable.housep);
|
|
product3.setProductName("酒店");
|
|
product3.setProductPrice(new BigDecimal("199.9"));
|
|
Product product4 = new Product();
|
|
product4.setImageUrlId(R.drawable.footp);
|
|
product4.setProductName("足疗");
|
|
product4.setProductPrice(new BigDecimal("29.9"));
|
|
Product product5 = new Product();
|
|
product5.setImageUrlId(R.drawable.lemonp);
|
|
product5.setProductName("柠檬");
|
|
product5.setProductPrice(new BigDecimal("9.9"));
|
|
productList.add(product);
|
|
productList.add(product1);
|
|
productList.add(product2);
|
|
productList.add(product3);
|
|
productList.add(product4);
|
|
productList.add(product5);
|
|
|
|
}
|
|
|
|
/**
|
|
* 发送网络请求获取数据
|
|
*/
|
|
class SearchProductTask extends AsyncTask<Void, Void, List<OrangeProductPack>> {
|
|
|
|
@Override
|
|
protected List<OrangeProductPack> doInBackground(Void... voids) {
|
|
OkHttpClientProduct clientProduct = new OkHttpClientProduct();
|
|
try {
|
|
list = clientProduct.getProductPack();
|
|
} catch (IOException e) {
|
|
e.printStackTrace();
|
|
}
|
|
return list;
|
|
}
|
|
|
|
@Override
|
|
protected void onPostExecute(List<OrangeProductPack> orangeProducts) {
|
|
productAdapter = new ProductAdapter(getActivity(), list);
|
|
gridView.setAdapter(productAdapter);
|
|
}
|
|
}
|
|
}
|
|
|