package pw.f.food.jd;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
/**
* Created by djz on 2016/11/10.
*/
public class JDFragment extends Fragment {
String TAG = "JDFragment";
private View rootView = null;
private LinearLayout llayout_main = null;
private TextView tv = null;
private LinearLayout.LayoutParams lp_gd = null;
private LinearLayout.LayoutParams lp_tv = null;
private ArrayList<Category> itemList = null;
private GDAdapter adapter = null;
@Override
public void onAttach(Activity activity)
{
Log.e(TAG, "onAttach...");
super.onAttach(activity);
}
@Override
public void onCreate(Bundle savedInstanceState)
{
Log.e(TAG, "onCreate...");
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
Log.e(TAG, "onCreateView...");
rootView = inflater.inflate(R.layout.jd_frg_main, null);
llayout_main = (LinearLayout) rootView.findViewById(R.id.llayout_jd_frg_main);
tv = (TextView) rootView.findViewById(R.id.tv_jd_frg_main);
updateTitle();
//模拟数据
for(int i=0; i<2; i++)
{
setData();
}
return rootView;
}
protected void updateTitle()
{
if(getArguments() != null)
{
updateTitle(getArguments().getString("name"));
}
}
protected void updateTitle(String title)
{
if(tv != null)
{
tv.setText(title);
}
}
private void setData()
{
if(itemList == null)
{
itemList = new ArrayList<Category>();
for(int i=1; i<11; i++)
{
itemList.add(new Category("选项 " + i, ""+i));
}
}
//高度60dp+行距8dp = 68dp
int heightUnit = (int) TypedValue
.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 68, getResources().getDisplayMetrics());
int height;
//计算Gridview总高度
if(itemList.size() % 3 == 0)
{
height = (itemList.size()/3 + 2)*heightUnit;
}
else{
height = (itemList.size()/3 + 1)*heightUnit;
}
if(lp_gd == null)
lp_gd = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, height);
if(lp_tv == null)
lp_tv = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT
, (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP
, 30, getResources().getDisplayMetrics()));
TextView tv_title = new TextView(getActivity());
tv_title.setLayoutParams(lp_tv);
tv_title.setText("组一");
llayout_main.addView(tv_title);
GridView gridView = new GridView(getActivity());
gridView.setNumColumns(3);
gridView.setVerticalSpacing(8);
gridView.setLayoutParams(lp_gd);
adapter = new GDAdapter(getActivity(), itemList,R.mipmap.ic_launcher);
gridView.setAdapter(adapter);
llayout_main.addView(gridView);
}
@Override
public void onActivityCreated(Bundle savedInstanceState)
{
Log.e(TAG, "onActivityCreated...");
super.onActivityCreated(savedInstanceState);
}
@Override
public void onStart()
{
Log.e(TAG, "onStart...");
super.onStart();
}
@Override
public void onResume()
{
Log.e(TAG, "onResume...");
super.onResume();
}
@Override
public void onPause()
{
Log.e(TAG, "onPause...");
super.onPause();
}
@Override
public void onStop()
{
Log.e(TAG, "onStop...");
super.onStop();
}
@Override
public void onDestroyView()
{
Log.e(TAG, "onDestroyView...");
super.onDestroyView();
}
@Override
public void onDestroy()
{
Log.e(TAG, "onDestroy...");
super.onDestroy();
}
@Override
public void onDetach()
{
Log.e(TAG, "onDetach...");
super.onDetach();
}
static class GDAdapter extends BaseAdapter
{
Context context;
List<Category> results;
int imageId;
ViewHolder holder = null;
public GDAdapter(Context context, List<Category> results, int imageId) {
this.context = context;
this.results = results;
this.imageId = imageId;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return results.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return results.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Category c = (Category)getItem(position);
if(convertView == null)
{
holder = new ViewHolder();
convertView = LayoutInflater.from(context).inflate(R.layout.jd_item, null);
holder.tv = (TextView) convertView.findViewById(R.id.tv_jd_item);
holder.imv = (ImageView) convertView.findViewById(R.id.imv_jd_item);
}
else
{
holder = (ViewHolder) convertView.getTag();
}
convertView.setTag(holder);
holder.tv.setText(c.getName());
holder.imv.setImageResource(imageId);
return convertView;
}
class ViewHolder
{
TextView tv;
ImageView imv;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
android 仿京东购物商城分类视图
共76个文件
xml:41个
java:6个
bin:6个
5星 · 超过95%的资源 需积分: 5 110 下载量 173 浏览量
2016-11-10
17:12:14
上传
评论 4
收藏 495KB ZIP 举报
温馨提示
android 仿京东购物商城分类视图,android studio 2.2项目 对应文章看这里: http://blog.csdn.net/stzy00/article/details/47959075
资源推荐
资源详情
资源评论
收起资源包目录
JD.zip (76个子文件)
gradlew.bat 2KB
gradlew 5KB
gradle.properties 747B
.gradle
2.14.1
tasks
_app_compileDebugJavaWithJavac
localJarClasspathSnapshot
localJarClasspathSnapshot.bin 20KB
localJarClasspathSnapshot.lock 17B
localClassSetAnalysis
localClassSetAnalysis.lock 17B
localClassSetAnalysis.bin 27KB
taskArtifacts
fileHashes.bin 143KB
cache.properties.lock 17B
taskArtifacts.bin 96KB
fileSnapshotsToTreeSnapshotsIndex.bin 25KB
fileSnapshots.bin 1.87MB
cache.properties 31B
app
proguard-rules.pro 662B
src
test
java
pw
f
food
jd
ExampleUnitTest.java 406B
androidTest
java
pw
f
food
jd
ExampleInstrumentedTest.java 754B
main
res
mipmap-xxxhdpi
ic_launcher.png 10KB
drawable
mipmap-hdpi
ic_launcher.png 3KB
values
colors.xml 214B
strings.xml 68B
styles.xml 394B
dimens.xml 216B
mipmap-xxhdpi
ic_launcher.png 8KB
mipmap-mdpi
ic_launcher.png 2KB
mipmap-xhdpi
ic_launcher.png 5KB
layout
jd_item.xml 731B
jd_frg_main.xml 1KB
jd_main.xml 1KB
values-w820dp
dimens.xml 364B
java
pw
f
food
jd
MyAdapter.java 2KB
JDFragment.java 7KB
Category.java 324B
MainActivity.java 3KB
AndroidManifest.xml 671B
app.iml 13KB
.gitignore 8B
build.gradle 889B
libs
gradle
wrapper
gradle-wrapper.jar 52KB
gradle-wrapper.properties 233B
.idea
gradle.xml 708B
runConfigurations.xml 564B
misc.xml 3KB
copyright
profiles_settings.xml 76B
modules.xml 341B
encodings.xml 159B
compiler.xml 686B
workspace.xml 151KB
libraries
javawriter_2_1_1.xml 330B
jsr305_2_0_1.xml 330B
rules_0_5.xml 550B
javax_annotation_api_1_2.xml 358B
support_core_utils_24_2_1.xml 777B
support_compat_24_2_1.xml 753B
support_media_compat_24_2_1.xml 789B
runner_0_5.xml 555B
support_fragment_24_2_1.xml 765B
support_vector_drawable_24_2_1.xml 640B
support_annotations_24_2_1.xml 495B
hamcrest_library_1_3.xml 342B
support_core_ui_24_2_1.xml 759B
espresso_idling_resource_2_2_2.xml 682B
animated_vector_drawable_24_2_1.xml 645B
support_v4_24_2_1.xml 420B
hamcrest_core_1_3.xml 526B
appcompat_v7_24_2_1.xml 585B
junit_4_12.xml 477B
android_android_24.xml 241B
hamcrest_integration_1_3.xml 354B
espresso_core_2_2_2.xml 627B
javax_inject_1.xml 324B
exposed_instrumentation_api_publish_0_5.xml 700B
JD.iml 856B
.gitignore 127B
local.properties 498B
settings.gradle 16B
build.gradle 521B
共 76 条
- 1
资源评论
- 樱花灬乱舞2019-03-15已接入 感谢分享
- qq_300880192017-10-26不知道好用不?djzbj2018-09-30好用
djzbj
- 粉丝: 4
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- NT98336 SDK 114版本
- torch-1.8.1+cu111-cp38-cp38-linux-x86-64.whl +torchvision
- 计算机设计 - VB+ACCESS网络计时管理系统设计(源代码+系统),保证可靠运行,毕业生可参考,免费资源下载
- 计算机设计 - vb+ACCESS身份证管理系统设计(LW+源代码),保证可靠运行,毕业生可参考,免费资源下载
- ARCMAP自动编号工具
- W801学习笔记十三:掌机系统-系统基础组件-PNG-loader
- studydatastruct3
- XHS链接提取/作品采集工具
- general-exporter windows
- kotlin语法快速入门文档
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功