陈力
2023-05-27 f8db5417fbb2fc1155e5c931605e3a6e06409475
增加设置页面
3个文件已添加
7个文件已修改
487 ■■■■■ 已修改文件
app/build.gradle 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/lotaai/canguiayw/CunCanFragment.java 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/lotaai/canguiayw/ManageActivity.java 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/lotaai/canguiayw/SelectFragment.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/lotaai/canguiayw/SettingFragment.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/drawable/circular_button_blue.xml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/activity_manage_top.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/framgment_cuncan.xml 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/framgment_setting.xml 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/values/colors.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/build.gradle
@@ -62,8 +62,12 @@
    //悬浮按钮
    implementation 'com.google.android.material:material:1.4.0'
    //table控件
    implementation 'com.github.huangyanbin:SmartTable:2.2.0'
   //下拉选择框控件
    implementation 'com.github.arcadefire:nice-spinner:1.3.4'
app/src/main/java/com/lotaai/canguiayw/CunCanFragment.java
@@ -1,17 +1,43 @@
package com.lotaai.canguiayw;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.os.Bundle;
import android.text.Editable;
import android.text.InputType;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.fragment.app.Fragment;
import com.bin.david.form.core.SmartTable;
import com.bin.david.form.core.TableConfig;
import com.bin.david.form.data.CellInfo;
import com.bin.david.form.data.column.Column;
import com.bin.david.form.data.format.bg.IBackgroundFormat;
import com.bin.david.form.data.format.draw.IDrawFormat;
import com.bin.david.form.data.style.FontStyle;
import com.bin.david.form.data.table.TableData;
import com.blankj.utilcode.util.ScreenUtils;
import com.lotaai.canguiayw.sqllitedb.Order;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class CunCanFragment extends Fragment {
    private View root;
    private Context context;
    private EditText editText;
    private SmartTable orderDetailTable;
    @Override
    public void onCreate(Bundle savedInstanceState) {
@@ -30,7 +56,116 @@
            root = inflater.inflate(R.layout.framgment_cuncan, container, false);
        }
        context = container.getContext();
        editText = (EditText)root.findViewById(R.id.edt_borrow_case_number);
        editText.setInputType(InputType.TYPE_NULL); // 屏蔽软键盘
        View.OnClickListener clickListener = new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                int index = editText.getSelectionEnd();
                Editable editable = editText.getText();
                int key = v.getId();
                if (key == R.id.borrow_bt_delete) {
                    if (0 != index) {
                        editable.delete(index - 1, index);
                    }
                } else if (key == R.id.borrow_bt_confirm) {
                    // 调用后台
                    String gridNo = editable.toString();
                    if (null == gridNo || "".equals(gridNo.trim())) {
                        Toast.makeText(context, "取餐码不能为空。", Toast.LENGTH_SHORT).show();
                        return;
                    } else {
                        if (gridNo.length() > 5) {
                            Toast.makeText(context, "取餐码输入错误,请重试。", Toast.LENGTH_SHORT).show();
                            return;
                        }
                    }
                } else {
                    Button button = (Button) v;
                    editable.insert(index, button.getText());
                }
            }
        };
        View view1 = root.findViewById(R.id.borrow_bt1);
        View view2 = root.findViewById(R.id.borrow_bt2);
        View view3 = root.findViewById(R.id.borrow_bt3);
        View view4 = root.findViewById(R.id.borrow_bt4);
        View view5 = root.findViewById(R.id.borrow_bt5);
        View view6 = root.findViewById(R.id.borrow_bt6);
        View view7 = root.findViewById(R.id.borrow_bt7);
        View view8 = root.findViewById(R.id.borrow_bt8);
        View view9 = root.findViewById(R.id.borrow_bt9);
        View view0 = root.findViewById(R.id.borrow_bt0);
        View view11 = root.findViewById(R.id.borrow_bt_delete);
        View view12 = root.findViewById(R.id.borrow_bt_confirm);
        view1.setOnClickListener(clickListener);
        view2.setOnClickListener(clickListener);
        view3.setOnClickListener(clickListener);
        view4.setOnClickListener(clickListener);
        view5.setOnClickListener(clickListener);
        view6.setOnClickListener(clickListener);
        view7.setOnClickListener(clickListener);
        view8.setOnClickListener(clickListener);
        view9.setOnClickListener(clickListener);
        view0.setOnClickListener(clickListener);
        view11.setOnClickListener(clickListener);
        view12.setOnClickListener(clickListener);
        //初始化ttable
        initOrderDetailTableView();
        return root;
    }
    public void initOrderDetailTableView(){
        Column<String> xuhaoCol = new Column<>("", "gridNo");
        xuhaoCol.setMinWidth(10);
        xuhaoCol.setComputeWidth(1);
        Column<String> nameCol = new Column<>("名称", "orderNo");
        nameCol.setComputeWidth(10);
        Column<String> numCol = new Column<>("量", "putInDate");
        numCol.setWidth(10);
        nameCol.setComputeWidth(1);
        List<Order> lists = new ArrayList<>();
//        for (int i = 1;i <= 20; i++) {
//            Order order = new Order();
//            order.setGridNo(Integer.toString(i));
//            order.setOrderNo("new year char grenn" );
//            Date dd = new Date();
//            order.setPutInDate(6);
//            order.setState(0);
//            order.setTakeCode("56897");
//            lists.add(order);
//        }
        TableData<Order> tableData = new TableData<Order>("订单详情",lists, xuhaoCol,nameCol, numCol);
        //设置数据
        orderDetailTable = root.findViewById(R.id.table);
        orderDetailTable.getConfig().setShowTableTitle(true);
        orderDetailTable.getConfig().setTableTitleStyle(new FontStyle(30,Color.WHITE));
//        // 设置表格标题名称文字样式
//        setTable.getConfig().setTableTitleStyle(new FontStyle(30, Color.GREEN));
        orderDetailTable.getConfig().setMinTableWidth(ScreenUtils.getScreenWidth()/2 -40);
        // 设置表格标题文字样式
        orderDetailTable.getConfig().setColumnTitleStyle(new FontStyle(30, Color.WHITE));
        IBackgroundFormat backgroundFormat = new IBackgroundFormat() {
            @Override
            public void drawBackground(Canvas canvas, Rect rect, Paint paint) {
                canvas.drawColor(getResources().getColor(R.color.DarkGray));
            }
        };
        orderDetailTable.getConfig().setColumnTitleBackground(backgroundFormat);
        // 设置表格主体内容文字样式
        orderDetailTable.getConfig().setContentStyle(new FontStyle(30, Color.WHITE));
//        setTable.setZoom(true,1,0.5f);                     //开启缩放功能
        orderDetailTable.getConfig().setShowXSequence(false);      //去掉表格顶部字母
        orderDetailTable.getConfig().setShowYSequence(false);      //去掉左侧数字
        // 设置表格主标题
        orderDetailTable.setTableData(tableData);
    }
}
app/src/main/java/com/lotaai/canguiayw/ManageActivity.java
@@ -30,14 +30,17 @@
    private LinearLayout mTabCunCan;
    private LinearLayout mTabOpenDoor;
    private LinearLayout mTabSelect;
    private LinearLayout mTabSetting;
    private Button mCunCanImg;
    private Button mOpenDoorImg;
    private Button mSelectImg;
    private Button mSettingImg;
    Fragment tab001;
    Fragment tab002;
    Fragment tab003;
    Fragment tabcuncan;
    Fragment tabOpenDoor;
    Fragment tabSelect;
    Fragment tabsetting;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
@@ -53,18 +56,22 @@
        mTabCunCan = (LinearLayout) findViewById(R.id.id_tab_cuncan);
        mTabOpenDoor = (LinearLayout) findViewById(R.id.id_tab_opendoor);
        mTabSelect = (LinearLayout) findViewById(R.id.id_tab_select);
        mTabSetting = (LinearLayout) findViewById(R.id.id_tab_setting);
        mCunCanImg =  findViewById(R.id.id_tab_cuncan_btn);
        mOpenDoorImg =  findViewById(R.id.id_tab_opendoor_btn);
        mSelectImg = findViewById(R.id.id_tab_select_btn);
        mSettingImg = findViewById(R.id.id_tab_setting_btn);
        tab001 = new CunCanFragment();
        tab002 = new OpenDoorFragment();
        tab003 = new SelectFragment();
        tabcuncan = new CunCanFragment();
        tabOpenDoor = new OpenDoorFragment();
        tabSelect = new SelectFragment();
        tabsetting = new SettingFragment();
        mFragments.add(tab001);
        mFragments.add(tab002);
        mFragments.add(tab003);
        mFragments.add(tabcuncan);
        mFragments.add(tabOpenDoor);
        mFragments.add(tabSelect);
        mFragments.add(tabsetting);
        mAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) {
@@ -90,6 +97,7 @@
        mTabCunCan.setOnClickListener(this);
        mTabOpenDoor.setOnClickListener(this);
        mTabSelect.setOnClickListener(this);
        mTabSetting.setOnClickListener(this);
        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageSelected(int arg0) {
@@ -110,7 +118,10 @@
                        mSelectImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                        mSelectImg.setTextColor(Color.parseColor("#000000"));
                        break;
                    case 3:
                        mSettingImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                        mSettingImg.setTextColor(Color.parseColor("#000000"));
                        break;
                    default:
                        break;
                }
@@ -141,6 +152,9 @@
            case R.id.id_tab_select:
                setSelect(2);
                break;
            case R.id.id_tab_setting:
                setSelect(3);
                break;
            default:
                break;
        }
@@ -161,6 +175,10 @@
                mSelectImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                mSelectImg.setTextColor(Color.parseColor("#000000"));
                break;
            case 3:
                mSettingImg.setBackgroundResource(R.drawable.tab_btn_pressed);
                mSettingImg.setTextColor(Color.parseColor("#000000"));
                break;
            default:
                break;
        }
@@ -176,6 +194,8 @@
        mOpenDoorImg.setTextColor(Color.parseColor("#ffffff"));
        mSelectImg.setBackgroundResource(R.drawable.tab_btn_normal);
        mSelectImg.setTextColor(Color.parseColor("#ffffff"));
        mSettingImg.setBackgroundResource(R.drawable.tab_btn_normal);
        mSettingImg.setTextColor(Color.parseColor("#ffffff"));
    }
    public void backMian(View view){
app/src/main/java/com/lotaai/canguiayw/SelectFragment.java
@@ -60,7 +60,6 @@
    public void initTableView(){
        Column<String> gridNo = new Column<>("格子", "gridNo");
        gridNo.setAutoCount(true);
        Column<String> orderNo = new Column<>("订单号", "orderNo");
        Column<String> putIntime = new Column<>("放入时间", "putInDate");
        Column<String> takeCode = new Column<>("操作", "takeCode");
@@ -103,7 +102,7 @@
        // 设置表格主标题
        setTable.setTableData(tableData);
        addHandler.sendEmptyMessageDelayed(0,10*1000);
        //addHandler.sendEmptyMessageDelayed(0,10*1000);
    }
    private Handler addHandler = new Handler() {
app/src/main/java/com/lotaai/canguiayw/SettingFragment.java
New file
@@ -0,0 +1,76 @@
package com.lotaai.canguiayw;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.Spannable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import androidx.fragment.app.Fragment;
import com.bin.david.form.core.SmartTable;
import com.blankj.utilcode.util.LogUtils;
import org.angmarch.views.NiceSpinner;
import org.angmarch.views.SpinnerTextFormatter;
import java.util.ArrayList;
import java.util.List;
public class SettingFragment extends Fragment {
    private View root;
    private Context context;
    private SmartTable setTable;
    private NiceSpinner chuanKouSpinner;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }
    @Override
    public void onDestroy() {
        super.onDestroy();
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        if (root == null) {
            root = inflater.inflate(R.layout.framgment_setting, container, false);
        }
        context = container.getContext();
        initSpinner();
        return root;
    }
    public void initSpinner(){
        chuanKouSpinner = root.findViewById(R.id.chuankouhao);
        chuanKouSpinner.setBackgroundResource(R.drawable.round_editstyle);
        chuanKouSpinner.setTextSize(30);
        final List<String> list = new ArrayList<String>();
        for (int i = 1; i<10 ;i++){
            list.add("ttyS" + i);
        }
        chuanKouSpinner.attachDataSource(list);
        chuanKouSpinner.addOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
               LogUtils.i(list.get(position));
            }
        });
    }
}
app/src/main/res/drawable/circular_button_blue.xml
New file
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false">
        <shape>
            <solid android:color="#0066ff" />
        </shape>
    </item>
    <item android:state_enabled="true" android:state_pressed="false">
        <shape android:shape="rectangle">
            <corners
                android:topLeftRadius="50dp"
                android:bottomLeftRadius="50dp"
                android:topRightRadius="50dp"
                android:bottomRightRadius="50dp" />
            <stroke
                android:width="10dp"
                android:color="@color/blue" />
            <solid android:color="@color/blue"  />
        </shape>
    </item>
    <item android:state_enabled="true" android:state_pressed="true">
        <shape android:shape="rectangle">
            <corners
                android:topLeftRadius="40dp"
                android:bottomLeftRadius="40dp"
                android:topRightRadius="40dp"
                android:bottomRightRadius="40dp" />
            <stroke
                android:width="10dp"
                android:color="@color/DarkGray" />
            <solid android:color="@color/DarkGray" />
        </shape>
    </item>
</selector>
app/src/main/res/layout/activity_manage_top.xml
@@ -54,6 +54,23 @@
            android:textColor="#ffffff"
            android:background="@drawable/tab_btn_normal"/>
    </LinearLayout>
    <LinearLayout
        android:id="@+id/id_tab_setting"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:orientation="vertical"
        android:gravity="center">
        <Button
            android:id="@+id/id_tab_setting_btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:clickable="false"
            android:text="设置"
            android:textSize="30dp"
            android:textColor="#ffffff"
            android:background="@drawable/tab_btn_normal"/>
    </LinearLayout>
    <ImageButton
        android:layout_width="80dp"
        android:layout_height="80dp"
app/src/main/res/layout/framgment_cuncan.xml
@@ -44,7 +44,7 @@
                    android:layout_height="480dp"
                    android:layout_alignParentBottom ="true"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="151dp"
                    android:layout_margin="5dp"
                    android:stretchColumns="*">
                    <TableRow
                        android:layout_width="0dp"
@@ -170,12 +170,50 @@
            android:layout_height="match_parent"
            android:background="@color/DarkGray"
            android:layout_margin="5dp"
            android:layout_weight="1">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textColor="@color/white"
                android:text=" 2336585858555"/>
            android:layout_weight="1"
            android:orientation="vertical">
            <com.bin.david.form.core.SmartTable
                android:id="@+id/table"
                android:layout_margin="10dp"
                android:layout_marginTop="1dp"
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="8"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="80dp"
                android:orientation="horizontal">
                <TextView
                    android:layout_width="100dp"
                    android:layout_height="match_parent"
                    android:textColor="@color/white"
                    android:gravity="right|center_vertical"
                    android:textSize="30dp"
                    android:text="格口:"/>
                <TextView
                    android:layout_width="150dp"
                    android:layout_height="match_parent"
                    android:textColor="@color/cheng"
                    android:gravity="center"
                    android:textSize="50dp"
                    android:text="15"/>
                <TextView
                    android:layout_width="100dp"
                    android:layout_height="match_parent"
                    android:textColor="@color/white"
                    android:textSize="30dp"
                    android:gravity="right|center_vertical"
                    android:text="订单:"/>
                <TextView
                    android:layout_width="300dp"
                    android:layout_height="match_parent"
                    android:textColor="@color/white"
                    android:textSize="30dp"
                    android:gravity="center"
                    android:text="20230568458912"/>
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>
</LinearLayout>
app/src/main/res/layout/framgment_setting.xml
New file
@@ -0,0 +1,123 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/bgcolor"
    android:layout_gravity="center"
    android:orientation="vertical">
    <LinearLayout
        android:layout_width="1000dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        android:orientation="horizontal">
        <TextView
            android:layout_width="150dp"
            android:layout_height="80dp"
            android:gravity="right|center_vertical"
            android:text="设备号:"
            android:layout_margin="10dp"
            android:textColor="@color/white"
            android:textSize="30dp" />
        <EditText
            android:layout_width="300dp"
            android:layout_height="80dp"
            android:layout_margin="10dp"
            android:gravity="center"
            android:background="@drawable/round_editstyle"
            android:hint="设备号"
            android:textColorHint="@color/white"
            android:textAlignment="center"
            android:textColor="@color/white"
            android:textSize="30dp" />
        <TextView
            android:layout_width="150dp"
            android:layout_height="80dp"
            android:layout_margin="10dp"
            android:gravity="right|center_vertical"
            android:text="设备秘钥:"
            android:textColor="@color/white"
            android:textSize="30dp" />
        <EditText
            android:layout_width="300dp"
            android:layout_height="80dp"
            android:layout_margin="10dp"
            android:gravity="center"
            android:background="@drawable/round_editstyle"
            android:hint="设备秘钥"
            android:textColorHint="@color/white"
            android:textAlignment="center"
            android:textColor="@color/white"
            android:textSize="30dp" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="1000dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        android:orientation="horizontal">
        <TextView
            android:layout_width="150dp"
            android:layout_height="80dp"
            android:gravity="right|center_vertical"
            android:text="串口号:"
            android:layout_margin="10dp"
            android:textColor="@color/white"
            android:textSize="30dp" />
        <org.angmarch.views.NiceSpinner
            android:id="@+id/chuankouhao"
            android:layout_width="300dp"
            android:layout_height="80dp"
            android:layout_margin="10dp" />
        <TextView
            android:layout_width="150dp"
            android:layout_height="80dp"
            android:layout_margin="10dp"
            android:gravity="right|center_vertical"
            android:text="副柜数量:"
            android:textColor="@color/white"
            android:textSize="30dp" />
        <EditText
            android:layout_width="300dp"
            android:layout_height="80dp"
            android:layout_margin="10dp"
            android:gravity="center"
            android:background="@drawable/round_editstyle"
            android:hint=""
            android:digits="1234567890"
            android:inputType="number"
            android:textColorHint="@color/white"
            android:textAlignment="center"
            android:textColor="@color/white"
            android:textSize="30dp" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="540dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        android:layout_marginTop="50dp"
        android:orientation="horizontal">
        <Button
            android:id="@+id/jihuo"
            android:layout_width="250dp"
            android:layout_height="80dp"
            android:textSize="30dp"
            android:layout_margin="10dp"
            android:layout_gravity="center"
            android:gravity="center"
            android:background="@drawable/circular_button"
            android:text="激活"/>
        <Button
            android:id="@+id/save"
            android:layout_width="250dp"
            android:layout_height="80dp"
            android:textSize="30dp"
            android:layout_margin="10dp"
            android:layout_gravity="center"
            android:gravity="center"
            android:background="@drawable/circular_button_blue"
            android:text="保存"/>
    </LinearLayout>
</LinearLayout>
app/src/main/res/values/colors.xml
@@ -10,4 +10,5 @@
    <color name="cheng">#FF7910</color>
    <color name="DarkGray">#696969</color>
    <color name="lessBlack">#67524d</color>
    <color name="blue">#0066ff</color>
</resources>