第一种实现方式:这种方式有个问题就像我项目中的问题,子列中的值如果是加减变化的,对应的每个父类的item的总价格会动态变化的话用此方式就会出现一定的问题,如果不需要实现像我项目图中的实现的方式的话可以考虑该方法,上个图看看

主要点就是:设置父类和子类的ListView的宽高都为fill_parent,这样ListView在滚动的时候就不会重新计算高度,保证滑动的流畅性

咱先看看ListView嵌套ListView应该怎样实现这个功能:

首先我存储了一段json数组,便于实现功能:

[html] view plaincopy
  1. {
  2. flag: true,
  3. message: "10000123",
  4. result: [
  5. {
  6. createtime: "2015-08-27 10:00:00",
  7. ddaddress: "东北旺南路28号",
  8. ddarea: "东城区",
  9. ddcity: "北京市",
  10. ddhouseId: 133,
  11. ddhouseName: "北京主库房",
  12. ddoperator: "陈文东",
  13. ddoperatorphone: "13810095764",
  14. ddprovince: "",
  15. faddress: "北京市东城区东北旺南路28号",
  16. id: 10000129,
  17. orderDetailVoList: [
  18. {
  19. faddress: "北京市东城区东北旺南路28号",
  20. goodsname: "罗技(Logitech)MK220 无线光电键鼠套装",
  21. goodspicurl: "http://static.dingdong.com.cn/img/4e78376b-c465-4e91-98dd-afb57a71af13.jpg",
  22. goodssum: 30,
  23. id: 201508261807445660,
  24. price: 90,
  25. totalmoney: 0.01
  26. },
  27. {
  28. faddress: "北京市东城区东北旺南路28号",
  29. goodsname: "罗技(Logitech)MK220 无线光电键鼠套装",
  30. goodspicurl: "http://static.dingdong.com.cn/img/4e78376b-c465-4e91-98dd-afb57a71af13.jpg",
  31. goodssum: 30,
  32. id: 201508261227116540,
  33. price: 90,
  34. totalmoney: 2700
  35. },
  36. {
  37. faddress: "北京市东城区东北旺南路28号",
  38. goodsname: "罗技(Logitech)MK120 键鼠套装",
  39. goodspicurl: "http://static.dingdong.com.cn/img/40fda34a-aa06-430f-bcb8-e2f24854bd7f.jpg",
  40. goodssum: 50,
  41. id: 201508261747296800,
  42. price: 69,
  43. totalmoney: 0.01
  44. },
  45. {
  46. faddress: "北京市东城区东北旺南路28号",
  47. goodsname: "TP-LINK TL-WR886N 450M无线路由器",
  48. goodspicurl: "http://static.dingdong.com.cn/img/6ec91287-fdc6-48e2-9730-8f432414640b.jpg",
  49. goodssum: 50,
  50. id: 201508261747293800,
  51. price: 89,
  52. totalmoney: 0.01
  53. },
  54. {
  55. faddress: "北京市东城区东北旺南路28号",
  56. goodsname: "罗技(Logitech) B175 商用无线鼠标",
  57. goodspicurl: "http://static.dingdong.com.cn/img/201a96a1-dac7-4100-bdc3-5d2a64e14138.jpg",
  58. goodssum: 50,
  59. id: 201508261805522020,
  60. price: 59,
  61. totalmoney: 0.01
  62. },
  63. {
  64. faddress: "北京市东城区东北旺南路28号",
  65. goodsname: "TP-LINK TL-WR886N 450M无线路由器",
  66. goodspicurl: "http://static.dingdong.com.cn/img/6ec91287-fdc6-48e2-9730-8f432414640b.jpg",
  67. goodssum: 50,
  68. id: 201508261227115650,
  69. price: 89,
  70. totalmoney: 4450
  71. }
  72. ],
  73. purchasemoney: 13380.04,
  74. type: 2
  75. },
  76. {
  77. createtime: "2015-08-27 10:00:00",
  78. ddaddress: "东北旺南路28号",
  79. ddarea: "东城区",
  80. ddcity: "北京市",
  81. ddhouseId: 133,
  82. ddhouseName: "北京主库房",
  83. ddoperator: "陈文东",
  84. ddoperatorphone: "13810095764",
  85. ddprovince: "",
  86. faddress: "北京市东城区东北旺南路28号",
  87. id: 10000128,
  88. orderDetailVoList: [
  89. {
  90. faddress: "北京市东城区东北旺南路28号",
  91. goodsname: "腾达(Tenda)N318无线路由器穿墙王300MN318无线路由器穿墙王300MN318无线路由器穿墙王300M",
  92. goodspicurl: "http://static.dingdong.com.cn/img/44f384cb-a934-482a-8524-24aa6d34c0e7.jpg",
  93. goodssum: 50,
  94. id: 201508261227115870,
  95. price: 44,
  96. totalmoney: 2200
  97. }
  98. ],
  99. purchasemoney: 2200,
  100. type: 2
  101. },
  102. {
  103. createtime: "2015-08-27 10:00:00",
  104. ddaddress: "东北旺南路28号",
  105. ddarea: "东城区",
  106. ddcity: "北京市",
  107. ddhouseId: 133,
  108. ddhouseName: "北京主库房",
  109. ddoperator: "陈文东",
  110. ddoperatorphone: "13810095764",
  111. ddprovince: "",
  112. faddress: "北京市东城区东北旺南路28号",
  113. id: 10000123,
  114. orderDetailVoList: [
  115. {
  116. faddress: "北京市东城区东北旺南路28号",
  117. goodsname: "罗技(Logitech)MK220 无线光电键鼠套装",
  118. goodspicurl: "http://static.dingdong.com.cn/img/4e78376b-c465-4e91-98dd-afb57a71af13.jpg",
  119. goodssum: 30,
  120. id: 201508261807445660,
  121. price: 90,
  122. totalmoney: 0.01
  123. },
  124. {
  125. faddress: "北京市东城区东北旺南路28号",
  126. goodsname: "TP-LINK TL-WDR5600 900M无线路由器",
  127. goodspicurl: "http://static.dingdong.com.cn/img/948fc3f3-bcb0-4743-8727-06249fa497e4.jpg",
  128. goodssum: 20,
  129. id: 201508261548064700,
  130. price: 139,
  131. totalmoney: 2780
  132. },
  133. {
  134. faddress: "北京市东城区东北旺南路28号",
  135. goodsname: "罗技(Logitech)MK120 键鼠套装",
  136. goodspicurl: "http://static.dingdong.com.cn/img/40fda34a-aa06-430f-bcb8-e2f24854bd7f.jpg",
  137. goodssum: 50,
  138. id: 201508261420353150,
  139. price: 69,
  140. totalmoney: 3450
  141. },
  142. {
  143. faddress: "北京市东城区东北旺南路28号",
  144. goodsname: "罗技(Logitech)MK220 无线光电键鼠套装",
  145. goodspicurl: "http://static.dingdong.com.cn/img/4e78376b-c465-4e91-98dd-afb57a71af13.jpg",
  146. goodssum: 30,
  147. id: 201508261227116540,
  148. price: 90,
  149. totalmoney: 2700
  150. },
  151. {
  152. faddress: "北京市东城区东北旺南路28号",
  153. goodsname: "罗技(Logitech)MK120 键鼠套装",
  154. goodspicurl: "http://static.dingdong.com.cn/img/40fda34a-aa06-430f-bcb8-e2f24854bd7f.jpg",
  155. goodssum: 50,
  156. id: 201508261747296800,
  157. price: 69,
  158. totalmoney: 0.01
  159. },
  160. {
  161. faddress: "北京市东城区东北旺南路28号",
  162. goodsname: "TP-LINK TL-WR886N 450M无线路由器",
  163. goodspicurl: "http://static.dingdong.com.cn/img/6ec91287-fdc6-48e2-9730-8f432414640b.jpg",
  164. goodssum: 50,
  165. id: 201508261747293800,
  166. price: 89,
  167. totalmoney: 0.01
  168. },
  169. {
  170. faddress: "北京市东城区东北旺南路28号",
  171. goodsname: "罗技(Logitech) B175 商用无线鼠标",
  172. goodspicurl: "http://static.dingdong.com.cn/img/201a96a1-dac7-4100-bdc3-5d2a64e14138.jpg",
  173. goodssum: 50,
  174. id: 201508261805522020,
  175. price: 59,
  176. totalmoney: 0.01
  177. },
  178. {
  179. faddress: "北京市东城区东北旺南路28号",
  180. goodsname: "TP-LINK TL-WR886N 450M无线路由器",
  181. goodspicurl: "http://static.dingdong.com.cn/img/6ec91287-fdc6-48e2-9730-8f432414640b.jpg",
  182. goodssum: 50,
  183. id: 201508261227115650,
  184. price: 89,
  185. totalmoney: 4450
  186. }
  187. ],
  188. purchasemoney: 13380.04,
  189. type: 2
  190. }
  191. ],
  192. state: true,
  193. status: 1
  194. }

接着我们需要一个Activity:

[java] view plaincopy
  1. package com.zl.listview;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import android.app.Activity;
  6. import android.content.Intent;
  7. import android.os.Bundle;
  8. import android.os.Handler;
  9. import android.view.View;
  10. import android.widget.AdapterView;
  11. import android.widget.AdapterView.OnItemClickListener;
  12. import android.widget.ListView;
  13. import android.widget.Toast;
  14. import com.kjy.kjylistview.R;
  15. public class QianTaoListviewActivity extends Activity {
  16. private ListView listView;
  17. private ArrayList<HashMap<String, Object>> parentList, childList;
  18. private ParentAdapter parentAdapter;
  19. @Override
  20. protected void onCreate(Bundle savedInstanceState) {
  21. // TODO Auto-generated method stub
  22. super.onCreate(savedInstanceState);
  23. setContentView(R.layout.activity_qiantao);
  24. init();
  25. }
  26. private void init() {
  27. listView = (ListView) findViewById(R.id.qiantao_lv);
  28. getHttpMessage();
  29. }
  30. public void getHttpMessage(){
  31. GetMessageControl getMessageControl = new GetMessageControl(handler, getApplicationContext());
  32. try {
  33. getMessageControl.setHttpMsg();
  34. } catch (Exception e) {
  35. // TODO Auto-generated catch block
  36. e.printStackTrace();
  37. }
  38. }
  39. Handler handler = new Handler(){
  40. public void handleMessage(android.os.Message msg) {
  41. List<PurOrderBean> listBeans = (List<PurOrderBean>)msg.obj;
  42. parentAdapter = new ParentAdapter(listBeans, QianTaoListviewActivity.this);
  43. listView.setAdapter(parentAdapter);
  44. };
  45. };
  46. }

然后我们需要解析存储在res/raw中的介绍哦你字符:

[java] view plaincopy
  1. package com.zl.listview;
  2. import java.io.InputStream;
  3. import java.lang.reflect.Type;
  4. import java.util.LinkedList;
  5. import java.util.List;
  6. import com.base.utils.HandlerParse;
  7. import com.google.gson.Gson;
  8. import com.google.gson.JsonParser;
  9. import com.google.gson.reflect.TypeToken;
  10. import com.kjy.kjylistview.R;
  11. import android.content.Context;
  12. import android.os.Handler;
  13. import android.os.Message;
  14. /**
  15. * @author wangkai
  16. *
  17. */
  18. public class GetMessageControl {
  19. Handler handler;
  20. private List<PurOrderBean> listBeans;
  21. private Context context;
  22. public GetMessageControl(Handler handler, Context context) {
  23. this.handler  = handler;
  24. this.context = context;
  25. }
  26. public void setHttpMsg() throws Exception{
  27. InputStream is = context.getResources().openRawResource(R.raw.json);
  28. byte[] buffer;
  29. buffer = new byte[is.available()];
  30. is.read(buffer);
  31. //将字节数组转换为以GB2312编码的字符串
  32. String json = new String(buffer, "utf-8");
  33. Type listType = new TypeToken<LinkedList<PurOrderBean>>(){}.getType();
  34. Gson gson = new Gson();
  35. JsonParser jsonparer = new JsonParser();
  36. listBeans = gson.fromJson(jsonparer.parse(json.toString()).getAsJsonObject().get("result"), listType);
  37. for (PurOrderBean bean : listBeans) {
  38. System.out.println("bean======" + bean);
  39. }
  40. Message msg = Message.obtain();
  41. msg.obj = listBeans;
  42. msg.what = HandlerParse.HTTP_SUCCESS;
  43. handler.sendMessage(msg);
  44. }
  45. }

然后我们需要两个Adapter:

首先是父类的Adapter:

[java] view plaincopy
  1. package com.zl.listview;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import android.content.Context;
  5. import android.content.Intent;
  6. import android.os.Handler;
  7. import android.view.LayoutInflater;
  8. import android.view.View;
  9. import android.view.View.OnClickListener;
  10. import android.view.ViewGroup;
  11. import android.widget.AdapterView;
  12. import android.widget.AdapterView.OnItemClickListener;
  13. import android.widget.BaseAdapter;
  14. import android.widget.Button;
  15. import android.widget.ListAdapter;
  16. import android.widget.TextView;
  17. import com.kjy.kjylistview.R;
  18. public class ParentAdapter extends BaseAdapter implements ListAdapter {
  19. private List<PurOrderBean> list;
  20. private Context context;
  21. private LayoutInflater inflater;
  22. private ChildAdapter daAdapter;
  23. public ParentAdapter(List<PurOrderBean> list, Context context) {
  24. super();
  25. this.list = list;
  26. this.context = context;
  27. daAdapter = new ChildAdapter(context);
  28. this.inflater = LayoutInflater.from(context);
  29. }
  30. @Override
  31. public int getCount() {
  32. // TODO Auto-generated method stub
  33. return list.size();
  34. }
  35. @Override
  36. public Object getItem(int position) {
  37. // TODO Auto-generated method stub
  38. return list.get(position);
  39. }
  40. @Override
  41. public long getItemId(int position) {
  42. // TODO Auto-generated method stub
  43. return position;
  44. }
  45. @Override
  46. public View getView(final int position, View convertView, ViewGroup parent) {
  47. ChildListViewItem childListViewItem = null;
  48. if (convertView == null) {
  49. childListViewItem = new ChildListViewItem();
  50. convertView = inflater.inflate(R.layout.parentitem, null, false);
  51. childListViewItem.text_caigou = (TextView) convertView.findViewById(R.id.text_caigou);
  52. childListViewItem.child_item_img = (TextView) convertView.findViewById(R.id.text_caigou);
  53. childListViewItem.child_item_title = (TextView) convertView.findViewById(R.id.shouhuoren_text);
  54. childListViewItem.parent_lv = (ChildLiistView) convertView.findViewById(R.id.parent_lv);
  55. childListViewItem.callphone_text = (TextView) convertView.findViewById(R.id.callphone_text);
  56. childListViewItem.shouhuodizhi_text = (TextView) convertView.findViewById(R.id.shouhuodizhi_text);
  57. convertView.setTag(childListViewItem);
  58. } else {
  59. childListViewItem = (ChildListViewItem) convertView.getTag();
  60. }
  61. childListViewItem.text_caigou.setText(list.get(position).getId()+"");
  62. childListViewItem.child_item_title.setText(list.get(position).getDdoperator());
  63. childListViewItem.callphone_text.setText(list.get(position).getDdoperatorphone());
  64. String address = list.get(position).getDdprovince() + list.get(position).getDdcity() + list.get(position).getDdarea() + list.get(position).getDdaddress();
  65. childListViewItem.shouhuodizhi_text.setText(address);
  66. final Button bt_jz = (Button) convertView.findViewById(R.id.button_add);
  67. int z = ((List<ItemGoodsBean>)list.get(position).getBeanGoodsList()).size();
  68. //      if (z <= 2) {
  69. bt_jz.setVisibility(View.GONE);
  70. daAdapter.addAll(((List<ItemGoodsBean>)list.get(position).getBeanGoodsList()));
  71. childListViewItem.parent_lv.setAdapter(daAdapter);
  72. bt_jz.setOnClickListener(new OnClickListener() {
  73. @Override
  74. public void onClick(View v) {
  75. bt_jz.setVisibility(View.GONE);
  76. daAdapter.addAll(((List<ItemGoodsBean>) list.get(position).getBeanGoodsList()));
  77. }
  78. });
  79. childListViewItem.parent_lv.setOnItemClickListener(new OnItemClickListener() {
  80. @Override
  81. public void onItemClick(AdapterView<?> arg0, View arg1,
  82. int arg2, long arg3) {
  83. Intent intent = new Intent(context, Activity_2.class);
  84. context.startActivity(intent);
  85. }
  86. });
  87. return convertView;
  88. }
  89. public class ChildListViewItem {
  90. TextView text_caigou;
  91. TextView child_item_title, shouhuodizhi_text,
  92. callphone_text;
  93. TextView child_item_img;
  94. ChildLiistView parent_lv;
  95. }
  96. }

其次是子类的Adapter:

[java] view plaincopy
  1. package com.zl.listview;
  2. import java.util.List;
  3. import android.content.Context;
  4. import android.graphics.Paint;
  5. import android.view.LayoutInflater;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.BaseAdapter;
  9. import android.widget.ImageView;
  10. import android.widget.TextView;
  11. import com.eegets.peter.enclosure.network.bitmap.abitmap.AWonderBitmap;
  12. import com.kjy.kjylistview.R;
  13. public class ChildAdapter extends BaseAdapter {
  14. private List<ItemGoodsBean> list;
  15. private Context context;
  16. private LayoutInflater inflater;
  17. private AWonderBitmap aWonderBitmap;
  18. public ChildAdapter(Context context) {
  19. super();
  20. this.context = context;
  21. aWonderBitmap = AWonderBitmap.create(context);
  22. }
  23. public void addAll(List<ItemGoodsBean> list) {
  24. this.list=list;
  25. notifyDataSetChanged();
  26. }
  27. public void clearAll() {
  28. this.list.clear();
  29. notifyDataSetChanged();
  30. }
  31. @Override
  32. public int getCount() {
  33. // TODO Auto-generated method stub
  34. return list.size();
  35. }
  36. @Override
  37. public Object getItem(int position) {
  38. // TODO Auto-generated method stub
  39. return list.get(position);
  40. }
  41. @Override
  42. public long getItemId(int position) {
  43. // TODO Auto-generated method stub
  44. return position;
  45. }
  46. @Override
  47. public View getView(int position, View convertView, ViewGroup parent) {
  48. ParentListItem parentListItem = null;
  49. if (convertView == null) {
  50. parentListItem = new ParentListItem();
  51. inflater = LayoutInflater.from(context);
  52. convertView = inflater.inflate(R.layout.sssssss, null, false);
  53. parentListItem.exhibit_item_icon = (ImageView) convertView .findViewById(R.id.exhibit_item_icon);
  54. parentListItem.text_name = (TextView) convertView .findViewById(R.id.text_name);
  55. parentListItem.text_count = (TextView) convertView .findViewById(R.id.text_count);
  56. parentListItem.text_price = (TextView) convertView .findViewById(R.id.text_price);
  57. convertView.setTag(parentListItem);
  58. } else {
  59. parentListItem = (ParentListItem) convertView.getTag();
  60. }
  61. parentListItem.text_name.setText(list.get(position).getGoodsname());
  62. parentListItem.text_count.setText(list.get(position).getGoodssum()+"");
  63. parentListItem.text_price.setText(list.get(position).getPrice()+"");
  64. parentListItem.text_price.getPaint() .setFlags(Paint.STRIKE_THRU_TEXT_FLAG | Paint.ANTI_ALIAS_FLAG);
  65. aWonderBitmap.display(parentListItem.exhibit_item_icon, list.get(position).getGoodspicurl());
  66. return convertView;
  67. }
  68. public class ParentListItem {
  69. ImageView exhibit_item_icon;
  70. TextView text_name, text_count, text_price;
  71. }
  72. }

然后我们需要一个我们重写的ListView,为的是设置Listview的固定高度:

[java] view plaincopy
  1. package com.zl.listview;
  2. import android.content.Context;
  3. import android.util.AttributeSet;
  4. import android.widget.ListView;
  5. public class ChildLiistView extends ListView {
  6. public ChildLiistView(Context context) {
  7. super(context);
  8. // TODO Auto-generated constructor stub
  9. }
  10. public ChildLiistView(Context context, AttributeSet attrs, int defStyle) {
  11. super(context, attrs, defStyle);
  12. // TODO Auto-generated constructor stub
  13. }
  14. public ChildLiistView(Context context, AttributeSet attrs) {
  15. super(context, attrs);
  16. // TODO Auto-generated constructor stub
  17. }
  18. @Override
  19. protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
  20. int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
  21. MeasureSpec.AT_MOST);
  22. super.onMeasure(widthMeasureSpec, expandSpec);
  23. }
  24. }

具体用到的一些jar包以及xml都在demo中,下载地址在最后~~~~~~~~~~~~~~~

具体的代码下载地址:http://download.csdn.net/detail/wangkai1101/9088931

第二种方法实现方式是重写一个ListView来实现效果的,效果非常好,能实现任意方式。第二种方式近期也会上传到csdn上~~~

listview嵌套listview相关推荐

  1. 解决listview 嵌套listview

    这几个文件是我从某位大神的简书上得来的,但是一时找不到这位仁兄,如果看到,请联系我,我将注明转载地址.(本人新人) 前段时间公司要开发一个软件产品,项目经理和我们的设计狮发过来一份UI,看到这份UI当 ...

  2. Android ListView嵌套ListView的实现方式

    首先刚到北京一个月,产品经理让做一个类似于商城的东东,起初感觉没什么难度,(不就一个电子商务app嘛,以前也做过啊),但是当看到有需求是这样的 然后就开始做,起初太懒了,就在网上找,找到了一个List ...

  3. Flutter开发-------ListView嵌套ListView

    ListView嵌套ListView 前言 实例代码分析 前言 在实际开发中,我们经常碰到ListView中嵌套ListView 实例代码分析 return Scaffold(body: ListVi ...

  4. listview嵌套listview,子listview只显示一个item问题

    背景: 我在做项目的时候准备用listview嵌套一个listview,但是发现,子listview只显示一条数据,于是,一猜又是计算高度出问题了. 处理办法,当然是和scrollview嵌套list ...

  5. Android ListView嵌套ListView,子ListView展示不全

    在适配器中,添加完子listView的适配器后,调用改方法,就可改善 public class Utility {public static void setListViewHeightBasedOn ...

  6. Android中RecyclerView嵌套RecyclerView或嵌套ListView

    Android中RecyclerView嵌套RecyclerView或嵌套ListView

  7. scrollview中嵌套listview产生冲突问题

    在scrollview中嵌套listview或者gridview时 如果listview或者gridview的高度时wrap-content会导致两者只显示一行多一点 原因: listview和gri ...

  8. android listView嵌套gridview的使用心得

    在开发的过程中可能需要用到listview嵌套gridview的场景,但是在Android中, 不能在一个拥有Scrollbar的组件中嵌入另一个拥有Scrollbar的组件,因为这不科学,会混淆滑动 ...

  9. ScrollView嵌套ListView处理事件冲突

    当ListView嵌套在ScrollView中时会有两个问题 列表内容显示不全 滑动事件冲突 第一个问题可以参考ScrollView与ListView嵌套仿微博个人主页中的解决方法. 第二个问题就是下 ...

最新文章

  1. 太任性!17 岁少年买不到回国机票,因“泄愤”攻击航司系统,被判刑 4 年
  2. 你应该在开始API开发之前知道的事(下)(翻译)
  3. linux c 头文件,linux下的头文件 及C/C++头文件 一览表
  4. 并发编程之Java内存模型
  5. python循环输出00-59
  6. DBA_Oracle Table Partition表分区概念汇总(概念)
  7. 使用 jQuery Mobile 与 HTML5 开发 Web App (五) —— jQuery Mobile 表单下
  8. Selenium API-鼠标与键盘事件
  9. css之多行文本输出
  10. 指针知识(四):指针数学计算
  11. 使用Mybatis实例
  12. 如何绘制用例图 - How to Draw Use Case Diagram
  13. 基于被动微波遥感和MODIS产品的天山雪水当量降尺度研究_赵文宇学习笔记
  14. css让全局字体为微软雅黑,wordpress主题通过自定义CSS实现全局更换微软雅黑字体...
  15. 市场调研报告-全球与中国船用下水推车市场现状及未来发展趋势
  16. 方法及方法的重载|数组
  17. excel内容少却文件很大_(excel内容很少,文件却很大,怎么解决)excel表格数据少但是过大怎么办...
  18. 理想浪漫主义色彩的句子
  19. mongodb关联查询
  20. 大数据研究的若干科学问题——徐宗本

热门文章

  1. netbeans 代码对齐_加快开发速度:NetBeans代码模板,AutoHotKey和Ditto
  2. LabVIEW自适应屏幕分辨率缩放
  3. 基于python的校园社团管理系统的设计与实现
  4. 小学计算机课 信息是什么,小学信息技术课听后感
  5. html5表单下拉列表样式,表单的各种下拉和样式大全
  6. 专利大战:详解苹果三星矩形设计风波
  7. 原来比亚迪造车这么不赚钱,最大营收竟靠手机代工
  8. 百度富文本编辑器(ueditor)的使用
  9. 强力推荐|是否还在为论文无法下载而忧愁,为大家安利下自己做的论文下载神器...
  10. 【游戏开发建模】教你使用Unity ProBuilder制作基础模型,搭建场景原型( 保姆级教程 | Unity 2021最新版)