懒是一种病态。当你获得了这种病态的时候,你的大脑便不再思考。
下面说一下一个简单的小问题:
问题需求是这样的:
我们根据上面的SKU不同,来显示对应格子的数量,有相对应的格子sku一样的,就要把数量显示出来。否则显示null;
我们采用了table数据来显示出来。
我们设定了一个3行4列的表格,根据后台服务器传过来的订单数量,我们根据订单数量来显示对应的格子数量。
下面是我们的逻辑处理:
/**
*
* addWegit:(动态生成tableview界面). <br/>
*
* @author Julin
* @param datas
*/
public void addWegit(List<OrderTBBean> datas) {
try {
table.setStretchAllColumns(true);
int test =0;
int postion =0;
int mubner=0;
<span style="white-space:pre"> </span><pre name="code" class="java"> //外层循环对应行数
int row;//是行数
for (int i = 0; i < 3; i++) {
TableRow tablerow = new TableRow(PickFenDetailActivity.this);
row = i;
for (int j = 0; j < 4; j++) {
testview = new TextView(PickFenDetailActivity.this);
testview.setBackground(getResources().getDrawable(
R.drawable.layout_yellow_shape));
testview.setTextColor(Color.BLACK);
//number.size()是后台总订单量数据
if (mubner < number.size()) {
if (j%2==0) {
test=test + 1;
postion = test;
testview.setText((postion)+"");
}else {
//在这里我们要根据格子来对应的订单,去填充根据sku查询出来的数据,进行填充,所以这里我们进行了双重for循环。
for (int j2 = 0; j2 < postion; j2++) {
<span style="white-space:pre"> </span>//第一层for循环是根据格子,来查找对应的sku里的数据
boolean a=true;
//这里我们标识一个变量来防止不匹配数据填充,避免匹配好的数据被覆盖。
for (int z = 0; z < mDatas.size(); z++) {
if (number.get(j2).getOrder_id().equals(mDatas.get(z).getOrder_id())) {
testview.setText(mDatas.get(z).getOrder_buynum()+"");
a=false;
break;//在这里我们加一个break跳出当前for
}else {
testview.setText("55555555");
}
}
if (!a)
{
break;
}
}
/*testview.setText(mDatas.get(mubner).getOrder_buynum()+"");*/
mubner++;
}
}
testview.setHeight(60);
testview.setGravity(Gravity.CENTER);
testview.setWidth(width / 2);
tablerow.addView(testview);
}
table.addView(tablerow, new TableLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
}
} catch (Exception e) {
Log.e(TAG, "addWeight has an error:", e);
finish();
}
}
就是这类东西了。下班了。。。。