浏览代码

功能提交!!

Arison 9 年之前
父节点
当前提交
b3ed278710

+ 2 - 0
WeiChat/build.gradle

@@ -129,4 +129,6 @@ dependencies {
     compile 'se.emilsjolander:stickylistheaders:2.7.0'
     compile project(':library-refreshlayout')
     compile files('src/main/jniLibs/pushservice-5.3.0.99.jar')
+
+    compile 'com.github.TonicArtos:StickyGridHeaders:1.0.1'
 }

+ 50 - 42
WeiChat/src/main/AndroidManifest.xml

@@ -3,11 +3,11 @@
     xmlns:tools="http://schemas.android.com/tools"
     package="com.xzjmyk.pm.activity"
     android:versionCode="71"
-    android:versionName="5.5.7">
+    android:versionName="5.5.7" >
 
     <uses-sdk
         android:minSdkVersion="11"
-        android:targetSdkVersion="23" />
+        android:targetSdkVersion="22" />
     <!-- share umeng -->
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
@@ -77,13 +77,13 @@
     <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
     <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
 
+    <!-- 适配Android N系统必需的ContentProvider写权限声明,写权限包含应用包名 -->
+    <!-- <uses-permission android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example" /> -->
+    <!-- <permission -->
+    <!-- android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example" -->
+    <!-- android:protectionLevel="normal"> -->
+    <!-- </permission> -->
 
-    <!-- 适配Android N系统必需的ContentProvider写权限声明,写权限包含应用包名-->
-    <!--<uses-permission android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example" />-->
-    <!--<permission-->
-        <!--android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example"-->
-        <!--android:protectionLevel="normal">-->
-    <!--</permission>-->
 
     <!-- 百度自动更新 -->
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
@@ -115,14 +115,14 @@
         android:icon="@drawable/uuu"
         android:label="@string/app_name"
         android:largeHeap="true"
-        android:theme="@style/AppTheme">
+        android:theme="@style/AppTheme" >
         <meta-data
             android:name="UMENG_CHANNEL"
             android:value="baidu" />
         <!-- 启动页面 -->
         <activity
             android:name=".ui.SplashActivity"
-            android:theme="@style/SplashTheme">
+            android:theme="@style/SplashTheme" >
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
 
@@ -131,10 +131,10 @@
                 <action android:name="cat.ereza.customactivityoncrash.RESTART" />
             </intent-filter>
         </activity>
-        <!--异常跳转页面-->
+        <!-- 异常跳转页面 -->
         <activity
             android:name=".CustomCrashActivity"
-            android:process=":error_activity">
+            android:process=":error_activity" >
             <intent-filter>
                 <action android:name="cat.ereza.customactivityoncrash.ERROR" />
             </intent-filter>
@@ -327,7 +327,7 @@
             android:exported="true"
             android:icon="@drawable/ic_chooser"
             android:label="@string/choose_file"
-            android:theme="@style/ChooserTheme">
+            android:theme="@style/ChooserTheme" >
             <intent-filter>
                 <action android:name="android.intent.action.GET_CONTENT" />
 
@@ -344,13 +344,13 @@
             android:enabled="@bool/use_provider"
             android:exported="true"
             android:grantUriPermissions="true"
-            android:permission="android.permission.MANAGE_DOCUMENTS">
+            android:permission="android.permission.MANAGE_DOCUMENTS" >
             <intent-filter>
                 <action android:name="android.content.action.DOCUMENTS_PROVIDER" />
             </intent-filter>
         </provider>
 
-        <receiver android:name=".broadcast.ScrenLockedBroadCastReceiver">
+        <receiver android:name=".broadcast.ScrenLockedBroadCastReceiver" >
             <intent-filter>
                 <action android:name="android.intent.action.SCREEN_OFF" />
                 <action android:name="android.intent.action.SCREEN_ON" />
@@ -358,7 +358,7 @@
         </receiver>
         <!-- oA模块提醒功能本地推送 -->
         <receiver android:name=".ui.erp.util.alarm.AlarmReceiver" />
-        
+
         <activity
             android:name=".ui.message.InstantMessageActivity"
             android:launchMode="singleTask"
@@ -378,7 +378,8 @@
         <!-- baidu  push service start -->
         <!-- 用于接收系统消息以保证PushService正常运行 -->
         <!-- push富媒体,使用富媒体推送必须声明 -->
-     <!--   <activity
+        <!--
+        <activity
             android:name="com.baidu.android.pushservice.richmedia.MediaViewActivity"
             android:configChanges="orientation|keyboardHidden"
             android:label="MediaViewActivity" >
@@ -388,12 +389,14 @@
             android:configChanges="orientation|keyboardHidden"
             android:label="MediaListActivity"
             android:launchMode="singleTask" >
-        </activity>-->
+        </activity>
+        -->
         <!-- push富媒体结束 -->
 
+
         <!-- push应用定义消息receiver声明 -->
         <receiver android:name=".ui.PushNetMessageReceiver" >
-            <intent-filter android:priority="1000">
+            <intent-filter android:priority="1000" >
 
                 <!-- 接收push消息 -->
                 <action android:name="com.baidu.android.pushservice.action.MESSAGE" />
@@ -407,7 +410,7 @@
         <receiver
             android:name="com.baidu.android.pushservice.PushServiceReceiver"
             android:process=":bdservice_v1" >
-            <intent-filter android:priority="1000">
+            <intent-filter android:priority="1000" >
                 <action android:name="android.intent.action.BOOT_COMPLETED" />
                 <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
                 <action android:name="com.baidu.android.pushservice.action.notification.SHOW" />
@@ -422,7 +425,7 @@
         <receiver
             android:name="com.baidu.android.pushservice.RegistrationReceiver"
             android:process=":bdservice_v1" >
-            <intent-filter android:priority="1000">
+            <intent-filter android:priority="1000" >
                 <action android:name="com.baidu.android.pushservice.action.METHOD" />
                 <action android:name="com.baidu.android.pushservice.action.BIND_SYNC" />
             </intent-filter>
@@ -435,12 +438,11 @@
             </intent-filter>
         </receiver>
 
-
         <service
             android:name="com.baidu.android.pushservice.PushService"
             android:exported="true"
             android:process=":bdservice_v1" >
-            <intent-filter android:priority="1000">
+            <intent-filter android:priority="1000" >
                 <action android:name="com.baidu.android.pushservice.action.PUSH_SERVICE" />
             </intent-filter>
         </service>
@@ -448,13 +450,16 @@
             android:name="com.baidu.android.pushservice.CommandService"
             android:exported="true" />
 
-        <!-- 适配Android N系统必需的ContentProvider声明,写权限包含应用包名-->
-       <!-- <provider
+        <!-- 适配Android N系统必需的ContentProvider声明,写权限包含应用包名 -->
+        <!--
+            <provider
             android:name="com.baidu.android.pushservice.PushInfoProvider"
             android:authorities="com.baidu.push.example.bdpush"
             android:writePermission="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example"
             android:protectionLevel = "signature"
-            android:exported="true" />-->
+            android:exported="true" />
+        -->
+
 
         <!-- 在百度开发者中心查询应用的API Key -->
         <meta-data
@@ -470,26 +475,26 @@
             </intent-filter>
         </activity>
         -->
-        <activity android:name=".ui.message.SelectCardActivity">
+        <activity android:name=".ui.message.SelectCardActivity" >
             <intent-filter>
                 <action android:name="com.xzjmyk.pm.activity.ui.message.SelectCardActivity" />
             </intent-filter>
         </activity>
 
         <!-- 百度 -->
-       <meta-data
+        <meta-data
             android:name="BDAPPID"
             android:value="7178311" />
         <meta-data
             android:name="BDAPPKEY"
             android:value="EmEVqG9NiKchcSbkoGkiyG2F2rp8YNmf" />
-        <!--<meta-data-->
-            <!--android:name="BDAPPID"-->
-            <!--android:value="8037149" />-->
-        <!--<meta-data-->
-            <!--android:name="BDAPPKEY"-->
-            <!--android:value="GMZFDGbbchdQQXjpabX38rTlychRGnEF" />-->
- 
+        <!-- <meta-data -->
+        <!-- android:name="BDAPPID" -->
+        <!-- android:value="8037149" /> -->
+        <!-- <meta-data -->
+        <!-- android:name="BDAPPKEY" -->
+        <!-- android:value="GMZFDGbbchdQQXjpabX38rTlychRGnEF" /> -->
+
         <service
             android:name="com.baidu.location.f"
             android:enabled="true"
@@ -504,7 +509,7 @@
 
         <receiver
             android:name="com.baidu.autoupdatesdk.receiver.BDBroadcastReceiver"
-            android:exported="false">
+            android:exported="false" >
             <intent-filter>
                 <action android:name="com.baidu.autoupdatesdk.ACTION_NEW_UPDATE" />
                 <action android:name="com.baidu.autoupdatesdk.ACTION_DOWNLOAD_COMPLETE" />
@@ -692,7 +697,7 @@
         <!-- umeng api key -->
         <meta-data
             android:name="UMENG_APPKEY"
-            android:value="57ea27bb67e58e088c003bbf"></meta-data>
+            android:value="57ea27bb67e58e088c003bbf" />
         <!-- weixin -->
         <activity
             android:name=".wxapi.WXEntryActivity"
@@ -704,7 +709,7 @@
         <activity
             android:name="com.tencent.tauth.AuthActivity"
             android:launchMode="singleTask"
-            android:noHistory="true">
+            android:noHistory="true" >
             <intent-filter>
                 <action android:name="android.intent.action.VIEW" />
 
@@ -722,7 +727,7 @@
         <activity
             android:name=".WBShareActivity"
             android:configChanges="keyboardHidden|orientation"
-            android:screenOrientation="portrait">
+            android:screenOrientation="portrait" >
             <intent-filter>
                 <action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" />
 
@@ -754,8 +759,11 @@
         <service
             android:name=".ui.erp.util.alarm.AlarmService"
             android:enabled="true"
-            android:exported="true"></service>
-        <activity android:name=".ui.erp.activity.form.DataFormDetailActivity"></activity>
+            android:exported="true" />
+
+        <activity android:name=".ui.erp.activity.form.DataFormDetailActivity" />
+        <activity android:name=".ui.erp.activity.form.DataFormFieldActivity" >
+        </activity>
     </application>
 
-</manifest>
+</manifest>

+ 0 - 19
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/form/DataFormControllActivity.java

@@ -1,19 +0,0 @@
-package com.xzjmyk.pm.activity.ui.erp.activity.form;
-
-import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
-
-import com.xzjmyk.pm.activity.R;
-
-/**
-  * @desc:动态表单配置界面----可能作废
-  * @author:Arison on 2016/11/17
-  */
-public class DataFormControllActivity extends AppCompatActivity {
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.activity_data_form_controll);
-    }
-}

+ 7 - 167
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/form/DataFormDetailActivity.java

@@ -1,6 +1,5 @@
 package com.xzjmyk.pm.activity.ui.erp.activity.form;
 
-import android.app.Activity;
 import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
@@ -30,6 +29,8 @@ import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.bean.oa.SelectBean;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.oa.SelectActivity;
+import com.xzjmyk.pm.activity.ui.erp.model.form.Data;
+import com.xzjmyk.pm.activity.ui.erp.model.form.GroupData;
 import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
@@ -39,7 +40,6 @@ import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.RegexUtil;
 import com.xzjmyk.pm.activity.ui.erp.view.ListViewInScroller;
 import com.xzjmyk.pm.activity.util.StringUtils;
-import com.xzjmyk.pm.activity.view.crouton.Crouton;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -278,170 +278,9 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
         }
     }
 
-    /**
-     * @desc:分组实体类
-     * @author:Arison on 2016/11/14
-     */
-    public class GroupData {
-
-        private int id;
-        private String name;
-        private ArrayList<Data> datas = new ArrayList<>();
-
-        public int getId() {
-            return id;
-        }
-
-        public void setId(int id) {
-            this.id = id;
-        }
-
-        public String getName() {
-            return name;
-        }
-
-        public void setName(String name) {
-            this.name = name;
-        }
-
-        public ArrayList<Data> getDatas() {
-            return datas;
-        }
-
-        public void setDatas(ArrayList<Data> datas) {
-            this.datas = datas;
-        }
-
-        /**
-         * 获取Item内容
-         *
-         * @param pPosition
-         * @return
-         */
-        public Object getItem(int pPosition) {
-            // Category排在第一位  
-            if (pPosition == 0) {
-                return this;
-            } else {
-                return datas.get(pPosition - 1);
-            }
-        }
-
-        /**
-         * 当前类别Item总数。分组也需要占用一个Item
-         *
-         * @return
-         */
-        public int getItemCount() {
-            return datas.size() + 1;
-        }
-    }
-
-    /**
-     * @desc:item数据实体类
-     * @author:Arison on 2016/11/14
-     */
-    public class Data {
-        private int detno;//编号
-        private String readonly;
-        private int isDefault;
-        private String group;//组名----多组的情况
-        private String type;//字段类型
-        private String name;//文本字段名
-        private int isNeed;//必填
-        private String value;//编辑的内容
-        private String field;//字段名
-        private String formStoreKey;//formstore key 
-        private int fdid;
-
-        public String getName() {
-            return name;
-        }
-
-        public void setName(String name) {
-            this.name = name;
-        }
-
-        public int getIsNeed() {
-            return isNeed;
-        }
-
-        public void setIsNeed(int isNeed) {
-            this.isNeed = isNeed;
-        }
-
-        public String getFormStoreKey() {
-            return formStoreKey;
-        }
-
-        public void setFormStoreKey(String formStoreKey) {
-            this.formStoreKey = formStoreKey;
-        }
-
-        public String getValue() {
-            return value;
-        }
-
-        public void setValue(String value) {
-            this.value = value;
-        }
-
-        public int getDetno() {
-            return detno;
-        }
-
-        public void setDetno(int detno) {
-            this.detno = detno;
-        }
-
-        public String getReadonly() {
-            return readonly;
-        }
-
-        public void setReadonly(String readonly) {
-            this.readonly = readonly;
-        }
-
-        public int getIsDefault() {
-            return isDefault;
-        }
+   
 
-        public void setIsDefault(int isDefault) {
-            this.isDefault = isDefault;
-        }
-
-        public String getGroup() {
-            return group;
-        }
-
-        public void setGroup(String group) {
-            this.group = group;
-        }
-
-        public String getType() {
-            return type;
-        }
-
-        public void setType(String type) {
-            this.type = type;
-        }
-
-        public String getField() {
-            return field;
-        }
-
-        public void setField(String field) {
-            this.field = field;
-        }
-
-        public int getFdid() {
-            return fdid;
-        }
-
-        public void setFdid(int fdid) {
-            this.fdid = fdid;
-        }
-    }
+    
 
 
     public class DataAdapter extends BaseAdapter {
@@ -737,8 +576,9 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                         public void afterTextChanged(Editable s) {
                             String type = data.getType();
                             if ("N".equals(type) && !RegexUtil.checkPositiveDigit(s.toString())) {
-                                Crouton.makeText((Activity)mContext,data.getName()+"只能输入正整数!",
-                                        android.R.color.transparent,3000).show();
+//                                Crouton.makeText((Activity)mContext,data.getName()+"只能输入正整数!",
+//                                        ct.getResources().getColor(R.color.bright_foreground_light_disabled),3000).show();
+                                ToastMessage(data.getName()+"只能输入正整数!");
                             } else {
                                 data.setValue(s.toString());
                             }

+ 71 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/form/DataFormFieldActivity.java

@@ -0,0 +1,71 @@
+package com.xzjmyk.pm.activity.ui.erp.activity.form;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.AdapterView;
+
+import com.lidroid.xutils.ViewUtils;
+import com.lidroid.xutils.view.annotation.ViewInject;
+import com.tonicartos.widget.stickygridheaders.StickyGridHeadersGridView;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.base.BaseActivity;
+import com.xzjmyk.pm.activity.ui.erp.adapter.StickyGridAdapter;
+import com.xzjmyk.pm.activity.ui.erp.model.form.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+  * @desc:配置字段  分组表格
+  * @author:Arison on 2016/11/23
+  */
+public class DataFormFieldActivity extends BaseActivity  implements AdapterView.OnItemClickListener,
+        StickyGridHeadersGridView.OnHeaderClickListener, StickyGridHeadersGridView.OnHeaderLongClickListener {
+
+    @ViewInject(R.id.asset_grid)
+    private StickyGridHeadersGridView mGridView;
+    
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_data_form_field);
+        ViewUtils.inject(this);
+        
+        initData();
+    }
+
+    private void initData() {
+        List<Data> hasHeaderIdList=new ArrayList<>();
+        int groupId=1;
+        for (int i=0;i<25;i++){
+            Data item=new Data();
+            item.setName("字段"+i);
+            item.setGroupId(groupId);
+            item.setGroup("组名"+groupId);
+            if (i%5==0){
+                groupId++;
+            }
+            hasHeaderIdList.add(item);
+        }
+
+        mGridView.setAdapter(new StickyGridAdapter(DataFormFieldActivity.this, hasHeaderIdList, mGridView));
+        mGridView.setAreHeadersSticky(false);//空值悬停
+
+    }
+
+
+    @Override
+    public void onHeaderClick(AdapterView<?> adapterView, View view, long l) {
+        
+    }
+
+    @Override
+    public boolean onHeaderLongClick(AdapterView<?> adapterView, View view, long l) {
+        return false;
+    }
+
+    @Override
+    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+
+    }
+}

+ 98 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/StickyGridAdapter.java

@@ -0,0 +1,98 @@
+package com.xzjmyk.pm.activity.ui.erp.adapter;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.BaseAdapter;
+import android.widget.GridView;
+import android.widget.TextView;
+
+import com.tonicartos.widget.stickygridheaders.StickyGridHeadersSimpleAdapter;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.erp.model.form.Data;
+
+import java.util.List;
+
+/**
+ * Created by Arison on 2016/11/23.
+ */
+public class StickyGridAdapter extends BaseAdapter implements
+        StickyGridHeadersSimpleAdapter {
+
+    private List<Data> hasHeaderIdList;
+    private LayoutInflater mInflater;
+    private GridView mGridView;
+
+    public StickyGridAdapter(Context context, List<Data> hasHeaderIdList,GridView mGridView  ) {
+        mInflater = LayoutInflater.from(context);
+        this.mGridView = mGridView;
+        this.hasHeaderIdList = hasHeaderIdList;
+    }
+
+    @Override
+    public long getHeaderId(int i) {
+        return hasHeaderIdList.get(i).getGroupId();
+    }
+    
+    @Override
+    public View getView(int position, View convertView, ViewGroup parent) {
+        ViewHolder mViewHolder;
+        if (convertView == null) {
+            mViewHolder = new ViewHolder();
+            convertView = mInflater.inflate(R.layout.grid_item_simpletext, parent, false);
+            mViewHolder.mfield= (TextView) convertView.findViewById(R.id.tv_field);
+            convertView.setTag(mViewHolder);
+            
+        } else {
+            mViewHolder = (ViewHolder) convertView.getTag();
+        }
+        mViewHolder.mfield.setText(hasHeaderIdList.get(position).getName());
+        return convertView;
+    }
+
+
+    @Override
+    public View getHeaderView(int i, View convertView, ViewGroup parent) {
+        HeaderViewHolder mHeaderHolder;
+        if (convertView == null) {
+            mHeaderHolder = new HeaderViewHolder();
+            convertView = mInflater.inflate(R.layout.grid_item_header, parent, false);
+            mHeaderHolder.mTextView= (TextView) convertView.findViewById(R.id.tv_name);
+            convertView.setTag(mHeaderHolder);
+            
+        } else {
+            mHeaderHolder = (HeaderViewHolder) convertView.getTag();
+        }
+        
+        mHeaderHolder.mTextView.setText(hasHeaderIdList.get(i).getGroup());
+        return convertView;
+    }
+
+
+    @Override
+    public int getCount() {
+        return hasHeaderIdList.size();
+    }
+
+    @Override
+    public Object getItem(int position) {
+        return hasHeaderIdList.get(position);
+    }
+
+    @Override
+    public long getItemId(int position) {
+        return position;
+    }
+
+
+   
+
+    public static class ViewHolder {
+        public TextView mfield;
+    }
+
+    public static class HeaderViewHolder {
+        public TextView mTextView;
+    }
+}

+ 116 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/form/Data.java

@@ -0,0 +1,116 @@
+package com.xzjmyk.pm.activity.ui.erp.model.form;
+
+/**
+ * @desc:item数据实体类
+ * @author:Arison on 2016/11/14
+ */
+public class Data {
+    private int detno;//编号
+    private String readonly;
+    private int isDefault;
+    private int groupId;//组ID
+    private String group;//组名----多组的情况
+    private String type;//字段类型
+    private String name;//文本字段名
+    private int isNeed;//必填
+    private String value;//编辑的内容
+    private String field;//字段名
+    private String formStoreKey;//formstore key 
+    private int fdid;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public int getIsNeed() {
+        return isNeed;
+    }
+
+    public void setIsNeed(int isNeed) {
+        this.isNeed = isNeed;
+    }
+
+    public String getFormStoreKey() {
+        return formStoreKey;
+    }
+
+    public void setFormStoreKey(String formStoreKey) {
+        this.formStoreKey = formStoreKey;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    public int getDetno() {
+        return detno;
+    }
+
+    public void setDetno(int detno) {
+        this.detno = detno;
+    }
+
+    public String getReadonly() {
+        return readonly;
+    }
+
+    public void setReadonly(String readonly) {
+        this.readonly = readonly;
+    }
+
+    public int getIsDefault() {
+        return isDefault;
+    }
+
+    public void setIsDefault(int isDefault) {
+        this.isDefault = isDefault;
+    }
+
+    public String getGroup() {
+        return group;
+    }
+
+    public void setGroup(String group) {
+        this.group = group;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public String getField() {
+        return field;
+    }
+
+    public void setField(String field) {
+        this.field = field;
+    }
+
+    public int getFdid() {
+        return fdid;
+    }
+
+    public void setFdid(int fdid) {
+        this.fdid = fdid;
+    }
+
+    public int getGroupId() {
+        return groupId;
+    }
+
+    public void setGroupId(int groupId) {
+        this.groupId = groupId;
+    }
+}

+ 62 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/form/GroupData.java

@@ -0,0 +1,62 @@
+package com.xzjmyk.pm.activity.ui.erp.model.form;
+
+import java.util.ArrayList;
+
+/**
+ * @desc:分组实体类
+ * @author:Arison on 2016/11/14
+ */
+public class GroupData {
+
+    private int id;
+    private String name;
+    private ArrayList<Data> datas = new ArrayList<>();
+
+    public int getId() {
+        return id;
+    }
+
+    public void setId(int id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public ArrayList<Data> getDatas() {
+        return datas;
+    }
+
+    public void setDatas(ArrayList<Data> datas) {
+        this.datas = datas;
+    }
+
+    /**
+     * 获取Item内容
+     *
+     * @param pPosition
+     * @return
+     */
+    public Object getItem(int pPosition) {
+        // Category排在第一位  
+        if (pPosition == 0) {
+            return this;
+        } else {
+            return datas.get(pPosition - 1);
+        }
+    }
+
+    /**
+     * 当前类别Item总数。分组也需要占用一个Item
+     *
+     * @return
+     */
+    public int getItemCount() {
+        return datas.size() + 1;
+    }
+}

+ 4 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java

@@ -38,7 +38,7 @@ import com.xzjmyk.pm.activity.ui.MainActivity;
 import com.xzjmyk.pm.activity.ui.base.EasyFragment;
 import com.xzjmyk.pm.activity.ui.circle.BusinessCircleActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.BaseInfoActivity;
-import com.xzjmyk.pm.activity.ui.erp.activity.form.DataFormDetailActivity;
+import com.xzjmyk.pm.activity.ui.erp.activity.form.DataFormFieldActivity;
 import com.xzjmyk.pm.activity.ui.erp.model.Master;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
@@ -332,8 +332,9 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
                 startActivity(new Intent(getActivity(), LocalVideoActivity.class));
                 break;
             case R.id.setting_rl:// 设置
-                //startActivity(new Intent(getActivity(), DataFormDetailActivity.class));
-               startActivity(new Intent(getActivity(), SettingActivity.class));
+               // startActivity(new Intent(getActivity(), DataFormDetailActivity.class));
+                startActivity(new Intent(getActivity(), DataFormFieldActivity.class));
+              // startActivity(new Intent(getActivity(), SettingActivity.class));
                 break;
             case R.id.app_scan_code_rl://APP二维码
                 ImageView imageView = new ImageView(getActivity());

+ 3 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/view/crouton/Style.java

@@ -44,9 +44,9 @@ public class Style {
 
     public static final int NOT_SET = -1;
 
-    public static final int holoRedLight = 0xffff4444;
-    public static final int holoGreenLight = 0xff99cc00;
-    public static final int holoBlueLight = 0xff33b5e5;
+    public static final int holoRedLight = 0x80ff4444;
+    public static final int holoGreenLight = 0x8099cc00;//#80000000  0xff99cc00
+    public static final int holoBlueLight = 0x8033b5e5;
 
     /**
      * Default style for alerting the user.

+ 16 - 0
WeiChat/src/main/res/drawable/shape_button_fields.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
+    <corners
+        android:topLeftRadius="16dp"
+        android:topRightRadius="16dp"
+        android:bottomRightRadius="16dp"
+        android:bottomLeftRadius="16dp">
+    </corners>
+    <stroke
+        android:width="1dp"
+        android:color="#999999">
+    </stroke>
+    <solid
+        android:color="#fefefe">
+    </solid>
+</shape>

+ 20 - 0
WeiChat/src/main/res/layout/activity_data_form_field.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools" 
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/white"
+    tools:context="com.xzjmyk.pm.activity.ui.erp.activity.form.DataFormFieldActivity">
+    <com.tonicartos.widget.stickygridheaders.StickyGridHeadersGridView
+        android:id="@+id/asset_grid"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:scrollbars="none"
+        android:clipToPadding="false"
+        android:layout_marginLeft="30dp"
+        android:layout_marginRight="30dp"
+        android:columnWidth="90dip"
+        android:horizontalSpacing="15dip"
+        android:numColumns="auto_fit"
+        android:verticalSpacing="20dip" />
+</RelativeLayout>

+ 30 - 0
WeiChat/src/main/res/layout/grid_item_header.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:layout_marginTop="10dp"
+    android:orientation="vertical">
+    <TextView
+        android:id="@+id/tv_name"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:padding="10dp"
+        android:text="标题"
+        android:textColor="@color/HalfBlack"
+        android:textSize="20sp"
+        android:textStyle="bold" />
+    <TextView
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignParentRight="true"
+        android:layout_marginRight="20dp"
+        android:padding="10dp"
+        android:text="标题描述"
+        android:textColor="@color/light_grey" />
+    <View
+        style="@style/app_line_horizontal_05p"
+        android:layout_height="1dp"
+        android:layout_alignParentBottom="true"
+        android:layout_marginBottom="30dp"
+        android:background="@color/umeng_socialize_text_time"></View>
+</RelativeLayout>

+ 20 - 0
WeiChat/src/main/res/layout/grid_item_simpletext.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:orientation="vertical">
+    <TextView
+        android:id="@+id/tv_field"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true"
+        android:gravity="center"
+        android:background="@drawable/shape_button_fields"
+        android:textSize="17sp"
+        android:minWidth="90dp"
+        android:paddingBottom="8dp"
+        android:paddingLeft="15dp"
+        android:paddingRight="15dp"
+        android:paddingTop="8dp"
+        android:text="字段名字:你好" />
+</RelativeLayout>

+ 2 - 0
build.gradle

@@ -4,6 +4,7 @@ buildscript {
     repositories {
         jcenter()
         maven { url "https://jcenter.bintray.com" }
+        maven { url "https://jitpack.io" }
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:2.1.0'
@@ -18,6 +19,7 @@ buildscript {
 allprojects {
     repositories {
         jcenter()
+        maven { url "https://jitpack.io" }
     }
 }
 

+ 3 - 3
library-refreshlayout/build.gradle

@@ -1,8 +1,8 @@
 apply plugin: 'com.android.library'
 
 android {
-    compileSdkVersion 23
-    buildToolsVersion '23.0.2'
+    compileSdkVersion 22
+    buildToolsVersion '22.0.1'
 
     defaultConfig {
         minSdkVersion 9
@@ -17,7 +17,7 @@ android {
 }
 
 dependencies {
-    compile fileTree(dir: 'libs', include: ['*.jar'])
+    compile fileTree(include: ['*.jar'], dir: 'libs')
     compile 'com.android.support:support-v4:23.1.1'
 }