Commit b4a2140e7266c771444e644ffed29e16b03a597a

Authored by xiongwei
0 parents
Exists in master

登录,注册 ,忘记密码,修改密码,更换手机号等。。界面

Showing 72 changed files with 2581 additions and 0 deletions   Show diff stats
... ... @@ -0,0 +1,15 @@
  1 +# 忽略 /CallTecher/app/build/ 目录下的所有文件
  2 +CallTecher/app/build/
  3 +
  4 +# 忽略 /CallTecher/.idea/ 目录下的所有文件
  5 +CallTecher/.idea/
  6 +
  7 +# 忽略 /CallTecher/.gradle/ 目录下的所有文件
  8 +CallTecher/.gradle/
  9 +
  10 +# 忽略 /CallTecher/build/ 目录下的所有文件
  11 +CallTecher/build/
  12 +
  13 +# 忽略 /CallTecher/ZBLibrary/build/ 目录下的所有文件
  14 +CallTecher/ZBLibrary/build/
  15 +
... ...
PersonalCenter/.gitignore
... ... @@ -0,0 +1,9 @@
  1 +*.iml
  2 +.gradle
  3 +/local.properties
  4 +/.idea/workspace.xml
  5 +/.idea/libraries
  6 +.DS_Store
  7 +/build
  8 +/captures
  9 +.externalNativeBuild
... ...
PersonalCenter/.idea/compiler.xml
... ... @@ -0,0 +1,22 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="CompilerConfiguration">
  4 + <resourceExtensions />
  5 + <wildcardResourcePatterns>
  6 + <entry name="!?*.java" />
  7 + <entry name="!?*.form" />
  8 + <entry name="!?*.class" />
  9 + <entry name="!?*.groovy" />
  10 + <entry name="!?*.scala" />
  11 + <entry name="!?*.flex" />
  12 + <entry name="!?*.kt" />
  13 + <entry name="!?*.clj" />
  14 + <entry name="!?*.aj" />
  15 + </wildcardResourcePatterns>
  16 + <annotationProcessing>
  17 + <profile default="true" name="Default" enabled="false">
  18 + <processorPath useClasspath="true" />
  19 + </profile>
  20 + </annotationProcessing>
  21 + </component>
  22 +</project>
0 23 \ No newline at end of file
... ...
PersonalCenter/.idea/copyright/profiles_settings.xml
... ... @@ -0,0 +1,3 @@
  1 +<component name="CopyrightManager">
  2 + <settings default="" />
  3 +</component>
0 4 \ No newline at end of file
... ...
PersonalCenter/.idea/gradle.xml
... ... @@ -0,0 +1,18 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="GradleSettings">
  4 + <option name="linkedExternalProjectsSettings">
  5 + <GradleProjectSettings>
  6 + <option name="distributionType" value="DEFAULT_WRAPPED" />
  7 + <option name="externalProjectPath" value="$PROJECT_DIR$" />
  8 + <option name="modules">
  9 + <set>
  10 + <option value="$PROJECT_DIR$" />
  11 + <option value="$PROJECT_DIR$/app" />
  12 + </set>
  13 + </option>
  14 + <option name="resolveModulePerSourceSet" value="false" />
  15 + </GradleProjectSettings>
  16 + </option>
  17 + </component>
  18 +</project>
0 19 \ No newline at end of file
... ...
PersonalCenter/.idea/misc.xml
... ... @@ -0,0 +1,62 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="EntryPointsManager">
  4 + <entry_points version="2.0" />
  5 + </component>
  6 + <component name="NullableNotNullManager">
  7 + <option name="myDefaultNullable" value="android.support.annotation.Nullable" />
  8 + <option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
  9 + <option name="myNullables">
  10 + <value>
  11 + <list size="4">
  12 + <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
  13 + <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
  14 + <item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
  15 + <item index="3" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
  16 + </list>
  17 + </value>
  18 + </option>
  19 + <option name="myNotNulls">
  20 + <value>
  21 + <list size="4">
  22 + <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
  23 + <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
  24 + <item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
  25 + <item index="3" class="java.lang.String" itemvalue="android.support.annotation.NonNull" />
  26 + </list>
  27 + </value>
  28 + </option>
  29 + </component>
  30 + <component name="ProjectLevelVcsManager" settingsEditedManually="false">
  31 + <OptionsSetting value="true" id="Add" />
  32 + <OptionsSetting value="true" id="Remove" />
  33 + <OptionsSetting value="true" id="Checkout" />
  34 + <OptionsSetting value="true" id="Update" />
  35 + <OptionsSetting value="true" id="Status" />
  36 + <OptionsSetting value="true" id="Edit" />
  37 + <ConfirmationsSetting value="0" id="Add" />
  38 + <ConfirmationsSetting value="0" id="Remove" />
  39 + </component>
  40 + <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" default="true" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
  41 + <output url="file://$PROJECT_DIR$/build/classes" />
  42 + </component>
  43 + <component name="ProjectType">
  44 + <option name="id" value="Android" />
  45 + </component>
  46 + <component name="masterDetails">
  47 + <states>
  48 + <state key="ProjectJDKs.UI">
  49 + <settings>
  50 + <last-edited>1.8</last-edited>
  51 + <splitter-proportions>
  52 + <option name="proportions">
  53 + <list>
  54 + <option value="0.2" />
  55 + </list>
  56 + </option>
  57 + </splitter-proportions>
  58 + </settings>
  59 + </state>
  60 + </states>
  61 + </component>
  62 +</project>
0 63 \ No newline at end of file
... ...
PersonalCenter/.idea/modules.xml
... ... @@ -0,0 +1,9 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="ProjectModuleManager">
  4 + <modules>
  5 + <module fileurl="file://$PROJECT_DIR$/PersonalCenter.iml" filepath="$PROJECT_DIR$/PersonalCenter.iml" />
  6 + <module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
  7 + </modules>
  8 + </component>
  9 +</project>
0 10 \ No newline at end of file
... ...
PersonalCenter/.idea/runConfigurations.xml
... ... @@ -0,0 +1,12 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="RunConfigurationProducerService">
  4 + <option name="ignoredProducers">
  5 + <set>
  6 + <option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
  7 + <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
  8 + <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
  9 + </set>
  10 + </option>
  11 + </component>
  12 +</project>
0 13 \ No newline at end of file
... ...
PersonalCenter/app/.gitignore
... ... @@ -0,0 +1 @@
  1 +/build
... ...
PersonalCenter/app/build.gradle
... ... @@ -0,0 +1,29 @@
  1 +apply plugin: 'com.android.application'
  2 +
  3 +android {
  4 + compileSdkVersion 25
  5 + buildToolsVersion "25.0.3"
  6 + defaultConfig {
  7 + applicationId "com.hjx.personalcenter"
  8 + minSdkVersion 9
  9 + targetSdkVersion 25
  10 + versionCode 1
  11 + versionName "1.0"
  12 + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  13 + }
  14 + buildTypes {
  15 + release {
  16 + minifyEnabled false
  17 + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  18 + }
  19 + }
  20 +}
  21 +
  22 +dependencies {
  23 + compile fileTree(dir: 'libs', include: ['*.jar'])
  24 + androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
  25 + exclude group: 'com.android.support', module: 'support-annotations'
  26 + })
  27 + compile 'com.android.support:appcompat-v7:25.3.1'
  28 + testCompile 'junit:junit:4.12'
  29 +}
... ...
PersonalCenter/app/proguard-rules.pro
... ... @@ -0,0 +1,17 @@
  1 +# Add project specific ProGuard rules here.
  2 +# By default, the flags in this file are appended to flags specified
  3 +# in C:\Users\h\AppData\Local\Android\Sdk/tools/proguard/proguard-android.txt
  4 +# You can edit the include path and order by changing the proguardFiles
  5 +# directive in build.gradle.
  6 +#
  7 +# For more details, see
  8 +# http://developer.android.com/guide/developing/tools/proguard.html
  9 +
  10 +# Add any project specific keep options here:
  11 +
  12 +# If your project uses WebView with JS, uncomment the following
  13 +# and specify the fully qualified class name to the JavaScript interface
  14 +# class:
  15 +#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
  16 +# public *;
  17 +#}
... ...
PersonalCenter/app/src/androidTest/java/com/hjx/personalcenter/ExampleInstrumentedTest.java
... ... @@ -0,0 +1,26 @@
  1 +package com.hjx.personalcenter;
  2 +
  3 +import android.content.Context;
  4 +import android.support.test.InstrumentationRegistry;
  5 +import android.support.test.runner.AndroidJUnit4;
  6 +
  7 +import org.junit.Test;
  8 +import org.junit.runner.RunWith;
  9 +
  10 +import static org.junit.Assert.*;
  11 +
  12 +/**
  13 + * Instrumentation test, which will execute on an Android device.
  14 + *
  15 + * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
  16 + */
  17 +@RunWith(AndroidJUnit4.class)
  18 +public class ExampleInstrumentedTest {
  19 + @Test
  20 + public void useAppContext() throws Exception {
  21 + // Context of the app under test.
  22 + Context appContext = InstrumentationRegistry.getTargetContext();
  23 +
  24 + assertEquals("com.hjx.personalcenter", appContext.getPackageName());
  25 + }
  26 +}
... ...
PersonalCenter/app/src/main/AndroidManifest.xml
... ... @@ -0,0 +1,71 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3 + package="com.hjx.personalcenter">
  4 +
  5 + <application
  6 + android:allowBackup="true"
  7 + android:icon="@mipmap/ic_launcher"
  8 + android:label="@string/app_name"
  9 + android:supportsRtl="true"
  10 + android:theme="@style/Theme.AppCompat.NoActionBar">
  11 + <activity
  12 + android:name=".activity.MainActivity"
  13 + android:launchMode="singleTask"
  14 + android:screenOrientation="landscape">
  15 + <intent-filter>
  16 + <action android:name="android.intent.action.MAIN" />
  17 +
  18 + <category android:name="android.intent.category.LAUNCHER" />
  19 + </intent-filter>
  20 + </activity>
  21 + <activity
  22 + android:name=".activity.LoginAndRegisterActivity"
  23 + android:launchMode="singleTask"
  24 + android:screenOrientation="landscape">
  25 +
  26 + </activity>
  27 + <activity
  28 + android:name=".activity.ForgotPasswordActivity"
  29 + android:launchMode="singleTask"
  30 + android:screenOrientation="landscape">
  31 +
  32 + </activity>
  33 + <activity
  34 + android:name=".activity.ChangePasswordActivity"
  35 + android:launchMode="singleTask"
  36 + android:screenOrientation="landscape">
  37 +
  38 + </activity>
  39 + <activity
  40 + android:name=".activity.RegisterInfoActivity"
  41 + android:launchMode="singleTask"
  42 + android:screenOrientation="landscape">
  43 +
  44 + </activity>
  45 + <activity
  46 + android:name=".activity.ElectronicCardValidationActivity"
  47 + android:launchMode="singleTask"
  48 + android:screenOrientation="landscape">
  49 +
  50 + </activity>
  51 + <activity
  52 + android:name=".activity.ChangeBangDingActivity"
  53 + android:launchMode="singleTask"
  54 + android:screenOrientation="landscape">
  55 +
  56 + </activity>
  57 + <activity
  58 + android:name=".activity.ChangeElectronicCardInfoActivity"
  59 + android:launchMode="singleTask"
  60 + android:screenOrientation="landscape">
  61 +
  62 + </activity>
  63 + <activity
  64 + android:name=".activity.ChangeEletronicCardPhone"
  65 + android:launchMode="singleTask"
  66 + android:screenOrientation="landscape">
  67 +
  68 + </activity>
  69 + </application>
  70 +
  71 +</manifest>
0 72 \ No newline at end of file
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ChangeBangDingActivity.java
... ... @@ -0,0 +1,18 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.os.Bundle;
  5 +
  6 +import com.hjx.personalcenter.R;
  7 +
  8 +/**
  9 + * Created by h on 2017/8/9.
  10 + */
  11 +
  12 +public class ChangeBangDingActivity extends Activity {
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_chage_binding);
  17 + }
  18 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ChangeElectronicCardInfoActivity.java
... ... @@ -0,0 +1,18 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.os.Bundle;
  5 +
  6 +import com.hjx.personalcenter.R;
  7 +
  8 +/**
  9 + * Created by h on 2017/8/9.
  10 + */
  11 +
  12 +public class ChangeElectronicCardInfoActivity extends Activity{
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_change_card_info);
  17 + }
  18 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ChangeEletronicCardPhone.java
... ... @@ -0,0 +1,18 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.os.Bundle;
  5 +
  6 +import com.hjx.personalcenter.R;
  7 +
  8 +/**
  9 + * Created by h on 2017/8/9.
  10 + */
  11 +
  12 +public class ChangeEletronicCardPhone extends Activity {
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_electronicard_phone);
  17 + }
  18 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ChangePasswordActivity.java
... ... @@ -0,0 +1,18 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.os.Bundle;
  5 +
  6 +import com.hjx.personalcenter.R;
  7 +
  8 +/**
  9 + * Created by h on 2017/8/9.
  10 + */
  11 +
  12 +public class ChangePasswordActivity extends Activity {
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_changepsword);
  17 + }
  18 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java
... ... @@ -0,0 +1,18 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.os.Bundle;
  5 +
  6 +import com.hjx.personalcenter.R;
  7 +
  8 +/**
  9 + * Created by h on 2017/8/9.
  10 + */
  11 +
  12 +public class ElectronicCardValidationActivity extends Activity {
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_electroniccard_validation);
  17 + }
  18 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ForgotPasswordActivity.java
... ... @@ -0,0 +1,18 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.os.Bundle;
  5 +
  6 +import com.hjx.personalcenter.R;
  7 +
  8 +/**
  9 + * Created by h on 2017/8/9.
  10 + */
  11 +
  12 +public class ForgotPasswordActivity extends Activity {
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_forgetpsword);
  17 + }
  18 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/LoginAndRegisterActivity.java
... ... @@ -0,0 +1,72 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.os.Bundle;
  4 +import android.support.annotation.Nullable;
  5 +import android.support.v4.app.Fragment;
  6 +import android.support.v4.view.ViewPager;
  7 +import android.support.v7.app.AppCompatActivity;
  8 +
  9 +import com.hjx.personalcenter.R;
  10 +import com.hjx.personalcenter.adapter.LoginAndRegisterAdapter;
  11 +import com.hjx.personalcenter.fragment.RegisterFragment;
  12 +import com.hjx.personalcenter.fragment.LoginFragment;
  13 +import com.hjx.personalcenter.thirdparty.SlidingTabLayout;
  14 +
  15 +import java.util.ArrayList;
  16 +import java.util.Arrays;
  17 +import java.util.List;
  18 +
  19 +/**
  20 + * 登录和注册 熊巍
  21 + * Created by h on 2017/8/8.
  22 + */
  23 +
  24 +public class LoginAndRegisterActivity extends AppCompatActivity {
  25 + private ViewPager viewPager;
  26 + private SlidingTabLayout tableLayout;
  27 + private List<Fragment> loginlist;
  28 + private LoginAndRegisterAdapter logindapter;
  29 + private List<String> title = Arrays.asList("登录", "注册");
  30 +
  31 + @Override
  32 + protected void onCreate(@Nullable Bundle savedInstanceState) {
  33 + super.onCreate(savedInstanceState);
  34 + setContentView(R.layout.activity_loginandregister);
  35 + initView();
  36 + initData();
  37 + setLister();
  38 + }
  39 +
  40 + private void initView() {
  41 + viewPager = (ViewPager) findViewById(R.id.viewpager_login);
  42 + tableLayout = (SlidingTabLayout) findViewById(R.id.TabLayout_id);
  43 + }
  44 +
  45 + private void initData() {
  46 + loginlist = new ArrayList<>();
  47 + for (int i = 0; i < title.size(); i++) {
  48 + if (title.get(i).equals("登录")) {
  49 + loginlist.add(LoginFragment.newInstance(i + 1));
  50 + } else {
  51 + loginlist.add(RegisterFragment.newInstance(i + 1));
  52 + }
  53 + }
  54 +
  55 +
  56 + //设置Tab上的标题
  57 + tableLayout.setData(title);
  58 + //设置关联的ViewPager
  59 + tableLayout.setViewPager(viewPager, 0);
  60 + logindapter = new LoginAndRegisterAdapter(loginlist, getSupportFragmentManager());
  61 + //给ViewPager设置适配器
  62 + viewPager.setAdapter(logindapter);
  63 + //设置滑动时数据不丢失
  64 + viewPager.setOffscreenPageLimit(1);
  65 + //将TabLayout和ViewPager关联起来。
  66 + }
  67 +
  68 + private void setLister() {
  69 + }
  70 +
  71 +
  72 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java
... ... @@ -0,0 +1,26 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.content.Intent;
  4 +import android.support.v7.app.AppCompatActivity;
  5 +import android.os.Bundle;
  6 +import android.view.View;
  7 +import android.widget.TextView;
  8 +
  9 +import com.hjx.personalcenter.R;
  10 +
  11 +public class MainActivity extends AppCompatActivity {
  12 + TextView ssss;
  13 + @Override
  14 + protected void onCreate(Bundle savedInstanceState) {
  15 + super.onCreate(savedInstanceState);
  16 + setContentView(R.layout.activity_main);
  17 + ssss = (TextView) findViewById(R.id.ssss);
  18 + ssss.setOnClickListener(new View.OnClickListener() {
  19 + @Override
  20 + public void onClick(View v) {
  21 + Intent intent = new Intent(MainActivity.this,LoginAndRegisterActivity.class);
  22 + startActivity(intent);
  23 + }
  24 + });
  25 + }
  26 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java
... ... @@ -0,0 +1,84 @@
  1 +package com.hjx.personalcenter.activity;
  2 +
  3 +import android.app.Activity;
  4 +import android.app.AlertDialog;
  5 +import android.content.DialogInterface;
  6 +import android.os.Bundle;
  7 +import android.view.View;
  8 +import android.widget.Button;
  9 +import android.widget.EditText;
  10 +import android.widget.TextView;
  11 +import android.widget.Toast;
  12 +
  13 +import com.hjx.personalcenter.R;
  14 +
  15 +/**填写注册信息 熊巍
  16 + * Created by h on 2017/8/9.
  17 + */
  18 +
  19 +public class RegisterInfoActivity extends Activity implements View.OnClickListener {
  20 + private EditText et_username;
  21 + private TextView et_region,et_grade,et_school;
  22 + private Button btn_ok;
  23 + String[] items;
  24 +
  25 + @Override
  26 + protected void onCreate(Bundle savedInstanceState) {
  27 + super.onCreate(savedInstanceState);
  28 + setContentView(R.layout.activity_registerinfo);
  29 + initView();
  30 + initData();
  31 + initLister();
  32 + }
  33 +
  34 + private void initView() {
  35 + et_username = (EditText) findViewById(R.id.et_username);
  36 + et_region = (TextView) findViewById(R.id.et_region);
  37 + et_grade = (TextView) findViewById(R.id.et_grade);
  38 + et_school = (TextView) findViewById(R.id.et_school);
  39 + btn_ok = (Button) findViewById(R.id.btn_ok);
  40 +
  41 +
  42 + }
  43 +
  44 + private void initData() {
  45 + items = new String[] { "魏", "蜀", "吴" };
  46 +
  47 + }
  48 +
  49 + private void initLister() {
  50 + et_region.setOnClickListener(this);
  51 + et_grade.setOnClickListener(this);
  52 + et_school.setOnClickListener(this);
  53 +
  54 +
  55 + }
  56 +
  57 + @Override
  58 + public void onClick(View v) {
  59 + switch (v.getId()){
  60 + case R.id.et_region:
  61 + break;
  62 + case R.id.et_grade:
  63 + choisegrade();
  64 + break;
  65 + case R.id.et_school:
  66 + break;
  67 + case R.id.btn_ok:
  68 + break;
  69 + }
  70 +
  71 + }
  72 +
  73 + private void choisegrade() {
  74 + AlertDialog dialog = new AlertDialog.Builder(this)
  75 + .setTitle("选择年级")
  76 + .setItems(items, new DialogInterface.OnClickListener() {
  77 + @Override
  78 + public void onClick(DialogInterface dialog, int which) {
  79 + Toast.makeText(RegisterInfoActivity.this, items[which], Toast.LENGTH_SHORT).show();
  80 + }
  81 + }).create();
  82 + dialog.show();
  83 + }
  84 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/LoginAndRegisterAdapter.java
... ... @@ -0,0 +1,31 @@
  1 +package com.hjx.personalcenter.adapter;
  2 +
  3 +import android.support.v4.app.Fragment;
  4 +import android.support.v4.app.FragmentManager;
  5 +import android.support.v4.app.FragmentPagerAdapter;
  6 +
  7 +import java.util.List;
  8 +
  9 +/**
  10 + * Created by Administrator on 2016/11/7.
  11 + */
  12 +
  13 +public class LoginAndRegisterAdapter extends FragmentPagerAdapter {
  14 + private List<Fragment> list;
  15 +
  16 + public LoginAndRegisterAdapter(List<Fragment> list, FragmentManager fragmentManager) {
  17 + super(fragmentManager);
  18 + this.list = list;
  19 + }
  20 +
  21 + @Override
  22 + public int getCount() {
  23 + return list.size();
  24 + }
  25 +
  26 + @Override
  27 + public Fragment getItem(int position) {
  28 + return list.get(position);
  29 + }
  30 +
  31 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/fragment/LoginFragment.java
... ... @@ -0,0 +1,71 @@
  1 +package com.hjx.personalcenter.fragment;
  2 +
  3 +import android.content.Intent;
  4 +import android.os.Bundle;
  5 +import android.support.annotation.Nullable;
  6 +import android.support.v4.app.Fragment;
  7 +import android.view.LayoutInflater;
  8 +import android.view.View;
  9 +import android.view.ViewGroup;
  10 +import android.widget.TextView;
  11 +
  12 +import com.hjx.personalcenter.R;
  13 +import com.hjx.personalcenter.activity.ForgotPasswordActivity;
  14 +
  15 +/**
  16 + * 登录
  17 + * Created by h on 2017/8/8.
  18 + */
  19 +
  20 +public class LoginFragment extends Fragment implements View.OnClickListener {
  21 + private View mView;
  22 + private int type;
  23 + private TextView tv_forget_pwd;
  24 + public static String TABLAYOUT_FRAGMENT = "tab_fragment";
  25 +
  26 + public static LoginFragment newInstance(int type) {
  27 + LoginFragment fragment = new LoginFragment();
  28 + Bundle bundle = new Bundle();
  29 + bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
  30 + fragment.setArguments(bundle);
  31 + return fragment;
  32 +
  33 + }
  34 +
  35 + @Override
  36 + public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  37 + if (mView == null) {
  38 + mView = inflater.inflate(R.layout.fragment_loginandregister_login, container, false);
  39 + initView(mView);
  40 + initData();
  41 + setLister();
  42 +
  43 +
  44 + }
  45 + return mView;
  46 + }
  47 + //初始化
  48 + private void initView(View mView) {
  49 + tv_forget_pwd = (TextView) mView.findViewById(R.id.tv_forget_pwd);
  50 +
  51 + }
  52 + private void initData() {
  53 + }
  54 + private void setLister() {
  55 + tv_forget_pwd.setOnClickListener(this);
  56 + }
  57 +
  58 +
  59 + @Override
  60 + public void onClick(View v) {
  61 + switch (v.getId()){
  62 + case R.id.tv_forget_pwd:
  63 + Intent intent = new Intent();
  64 + intent.setClass(getActivity(),ForgotPasswordActivity.class);
  65 + startActivity(intent);
  66 + getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
  67 + break;
  68 + }
  69 +
  70 + }
  71 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/fragment/RegisterFragment.java
... ... @@ -0,0 +1,70 @@
  1 +package com.hjx.personalcenter.fragment;
  2 +
  3 +import android.content.Intent;
  4 +import android.os.Bundle;
  5 +import android.support.annotation.Nullable;
  6 +import android.support.v4.app.Fragment;
  7 +import android.view.LayoutInflater;
  8 +import android.view.View;
  9 +import android.view.ViewGroup;
  10 +import android.widget.Button;
  11 +
  12 +import com.hjx.personalcenter.R;
  13 +import com.hjx.personalcenter.activity.RegisterInfoActivity;
  14 +
  15 +/**
  16 + * 注册
  17 + * Created by Administrator on 2016/11/7.
  18 + */
  19 +
  20 +public class RegisterFragment extends Fragment implements View.OnClickListener {
  21 + private View mView;
  22 + private Button btn_register;
  23 + private int type;
  24 + public static String TABLAYOUT_FRAGMENT = "tab_fragment";
  25 +
  26 + public static RegisterFragment newInstance(int type) {
  27 + RegisterFragment fragment = new RegisterFragment();
  28 + Bundle bundle = new Bundle();
  29 + bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
  30 + fragment.setArguments(bundle);
  31 + return fragment;
  32 +
  33 + }
  34 + @Override
  35 + public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  36 + if (mView == null) {
  37 + mView = inflater.inflate(R.layout.fragment_loginandregister_register, container, false);
  38 + initView(mView);
  39 + initData();
  40 + setLister();
  41 +
  42 +
  43 + }
  44 + return mView;
  45 + }
  46 +
  47 + private void initView(View mView) {
  48 + btn_register = (Button) mView.findViewById(R.id.btn_register);
  49 +
  50 + }
  51 + private void initData() {
  52 + }
  53 + private void setLister() {
  54 + btn_register.setOnClickListener(this);
  55 + }
  56 +
  57 +
  58 + @Override
  59 + public void onClick(View v) {
  60 + switch (v.getId()){
  61 + case R.id.btn_register:
  62 + Intent intent = new Intent();
  63 + intent.setClass(getActivity(),RegisterInfoActivity.class);
  64 + startActivity(intent);
  65 + getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
  66 + break;
  67 + }
  68 +
  69 + }
  70 +}
... ...
PersonalCenter/app/src/main/java/com/hjx/personalcenter/thirdparty/SlidingTabLayout.java
... ... @@ -0,0 +1,304 @@
  1 +package com.hjx.personalcenter.thirdparty;
  2 +
  3 +import android.content.Context;
  4 +import android.graphics.Bitmap;
  5 +import android.graphics.BitmapFactory;
  6 +import android.graphics.Canvas;
  7 +import android.support.v4.view.ViewPager;
  8 +import android.support.v4.view.ViewPager.OnPageChangeListener;
  9 +import android.util.AttributeSet;
  10 +import android.util.DisplayMetrics;
  11 +import android.util.TypedValue;
  12 +import android.view.Gravity;
  13 +import android.view.View;
  14 +import android.view.WindowManager;
  15 +import android.widget.HorizontalScrollView;
  16 +import android.widget.LinearLayout;
  17 +import android.widget.TextView;
  18 +
  19 +import com.hjx.personalcenter.R;
  20 +
  21 +import java.util.List;
  22 +
  23 +/**
  24 + * 首页滑动条
  25 + *
  26 + * @author gaok
  27 + * @date 2017/7/6
  28 + */
  29 +public class SlidingTabLayout extends HorizontalScrollView {
  30 + private Context mContext;
  31 + private int selection = 0;
  32 + /**
  33 + * tab容器
  34 + */
  35 + private LinearLayout mItemsLayout;
  36 + /**
  37 + * 指示器
  38 + */
  39 + private Bitmap mSlideIcon;
  40 + /**
  41 + * 指示器初始X偏移量
  42 + */
  43 + private int mInitTranslationX;
  44 + /**
  45 + * 指示器初始Y偏移量
  46 + */
  47 + private int mInitTranslationY;
  48 + /**
  49 + * 滑动过程中指示器的水平偏移量
  50 + */
  51 + private int mTranslationX;
  52 + /**
  53 + * tab总数
  54 + */
  55 + private int mTotalItemsCount;
  56 + /**
  57 + * 指示器绘制数据的初始化标志
  58 + */
  59 + private boolean isFirstTime = true;
  60 + /**
  61 + * 页面可见的tab数量,默认4个
  62 + */
  63 + private int VISIBLE_TAB_COUNT = 2;
  64 + /**
  65 + * 移动到倒数第几个,容器开始滑动
  66 + */
  67 + private int START_SCROLL = 2;
  68 + /**
  69 + * 标题正常时的颜色
  70 + */
  71 + private static final int COLOR_TEXT_NORMAL = 0xFF666666;
  72 + /**
  73 + * 标题选中时的颜色
  74 + */
  75 + private static final int COLOR_TEXT_HIGHLIGHTCOLOR = 0xFF21c4ff;
  76 + private ViewPager mViewPager;
  77 + private List<String> mTabTitles;
  78 + private int mTabVisibleCount = VISIBLE_TAB_COUNT;
  79 + private OnPageChangeListener onPageChangeListener;
  80 +
  81 + public SlidingTabLayout(Context context) {
  82 + this(context, null);
  83 + }
  84 +
  85 + public SlidingTabLayout(Context context, AttributeSet attrs) {
  86 + super(context, attrs);
  87 + this.mContext = context;
  88 + this.mSlideIcon = BitmapFactory.decodeResource(getResources(), R.mipmap.blank);
  89 + this.mItemsLayout = new LinearLayout(context);
  90 + initTabStripParams();
  91 + addView(mItemsLayout, 0, new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
  92 + }
  93 +
  94 + public void scroll(int position, float positionOffset) {
  95 + int tabWidth = mItemsLayout.getChildAt(position).getWidth();
  96 + mTranslationX = (int) ((position + positionOffset) * tabWidth);
  97 +
  98 + // 容器滚动,当移动到倒数最后一个的时候,开始滚动
  99 + if (positionOffset > 0 && position >= (VISIBLE_TAB_COUNT - START_SCROLL) && mTotalItemsCount > VISIBLE_TAB_COUNT) {
  100 + if (VISIBLE_TAB_COUNT != 1) {
  101 + //注意这里是整体滑动,使得tabs跟指示器保持相对静止
  102 + this.scrollTo((position - (VISIBLE_TAB_COUNT - START_SCROLL)) * tabWidth + (int) (tabWidth * positionOffset), 0);
  103 + } else
  104 + // 为count为1时 的特殊处理
  105 + {
  106 + this.scrollTo(position * tabWidth + (int) (tabWidth * positionOffset), 0);
  107 + }
  108 + }
  109 + invalidate();
  110 + }
  111 +
  112 + private void initTabStripParams() {
  113 + mItemsLayout.setClipChildren(false);
  114 + mItemsLayout.setClipToPadding(false);
  115 + mItemsLayout.setGravity(Gravity.BOTTOM);
  116 + mItemsLayout.setPadding(0, 0, 0, 0);
  117 + }
  118 +
  119 + /**
  120 + * 绘制指示器
  121 + */
  122 + @Override
  123 + protected void dispatchDraw(Canvas canvas) {
  124 + canvas.save();
  125 + // 平移到正确的位置
  126 + canvas.translate(mInitTranslationX + mTranslationX, this.mInitTranslationY);//修正tabs的平移量
  127 + canvas.drawBitmap(this.mSlideIcon, 0, 0, null);
  128 + canvas.restore();
  129 + super.dispatchDraw(canvas);
  130 + }
  131 +
  132 + @Override
  133 + protected void onLayout(boolean changed, int l, int t, int r, int b) {
  134 + super.onLayout(changed, l, t, r, b);
  135 + if (isFirstTime && (mTotalItemsCount > 0) && getItemView(this.selection) != null) {
  136 + View currentItemView = getItemView(this.selection);
  137 + this.mInitTranslationX = (currentItemView.getLeft() + currentItemView.getWidth() / 2 - this.mSlideIcon.getWidth() / 2);
  138 + this.mInitTranslationY = (b - t - this.mSlideIcon.getHeight());
  139 + isFirstTime = false;
  140 + }
  141 + }
  142 +
  143 + public void setVisibleTabCount(int VISIBLE_TAB_COUNT) {
  144 + this.VISIBLE_TAB_COUNT = VISIBLE_TAB_COUNT;
  145 + }
  146 +
  147 + public void setStartScroll(int START_SCROLL) {
  148 + this.START_SCROLL = START_SCROLL;
  149 + }
  150 +
  151 + public View getItemView(int itemPosition) {
  152 + if ((itemPosition >= 0) && (itemPosition < this.mTotalItemsCount)) {
  153 + return this.mItemsLayout.getChildAt(itemPosition);
  154 + }
  155 + return null;
  156 + }
  157 +
  158 + public void setData(List<String> datas) {
  159 + mTotalItemsCount = 0;
  160 + // 如果传入的list有值,则移除布局文件中设置的view
  161 + if (datas != null && datas.size() > 0) {
  162 + this.mItemsLayout.removeAllViews();
  163 + this.mTabTitles = datas;
  164 +
  165 + for (String title : mTabTitles) {
  166 + // 添加view
  167 + this.mItemsLayout.addView(generateTextView(title));
  168 + mTotalItemsCount++;
  169 + }
  170 + // 设置item的click事件
  171 + setItemClickEvent();
  172 + }
  173 + }
  174 +
  175 + /**
  176 + * 对外的ViewPager的回调接口
  177 + *
  178 + * @author zhy
  179 + */
  180 + public interface PageChangeListener {
  181 + void onPageScrolled(int position, float positionOffset, int positionOffsetPixels);
  182 +
  183 + void onPageSelected(int position);
  184 +
  185 + void onPageScrollStateChanged(int state);
  186 + }
  187 +
  188 + // 设置关联的ViewPager
  189 + public void setViewPager(ViewPager mViewPager, int pos) {
  190 + this.mViewPager = mViewPager;
  191 +
  192 + mViewPager.addOnPageChangeListener(new OnPageChangeListener() {
  193 + @Override
  194 + public void onPageSelected(int position) {
  195 + // 设置字体颜色高亮
  196 + resetTextViewColor();
  197 + highLightTextView(position);
  198 +
  199 + // 回调
  200 + if (onPageChangeListener != null) {
  201 + onPageChangeListener.onPageSelected(position);
  202 + }
  203 + }
  204 +
  205 + @Override
  206 + public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
  207 + // 滚动
  208 + scroll(position, positionOffset);
  209 +
  210 + // 回调
  211 + if (onPageChangeListener != null) {
  212 + onPageChangeListener.onPageScrolled(position, positionOffset, positionOffsetPixels);
  213 + }
  214 +
  215 + }
  216 +
  217 + @Override
  218 + public void onPageScrollStateChanged(int state) {
  219 + // 回调
  220 + if (onPageChangeListener != null) {
  221 + onPageChangeListener.onPageScrollStateChanged(state);
  222 + }
  223 +
  224 + }
  225 + });
  226 + // 设置当前页
  227 + mViewPager.setCurrentItem(pos);
  228 + // 高亮
  229 + highLightTextView(pos);
  230 + }
  231 +
  232 + /**
  233 + * 重置文本颜色
  234 + */
  235 + private void resetTextViewColor() {
  236 + for (int i = 0; i < mItemsLayout.getChildCount(); i++) {
  237 + View view = mItemsLayout.getChildAt(i);
  238 + if (view instanceof TextView) {
  239 + ((TextView) view).setTextColor(COLOR_TEXT_NORMAL);
  240 + }
  241 + }
  242 + }
  243 +
  244 + /**
  245 + * 高亮文本
  246 + *
  247 + * @param position
  248 + */
  249 + protected void highLightTextView(int position) {
  250 + View view = mItemsLayout.getChildAt(position);
  251 + if (view instanceof TextView) {
  252 + ((TextView) view).setTextColor(COLOR_TEXT_HIGHLIGHTCOLOR);
  253 + }
  254 +
  255 + }
  256 +
  257 + private void setItemClickEvent() {
  258 + int cCount = mItemsLayout.getChildCount();
  259 + for (int i = 0; i < cCount; i++) {
  260 + final int j = i;
  261 + View view = mItemsLayout.getChildAt(i);
  262 + view.setOnClickListener(new OnClickListener() {
  263 + @Override
  264 + public void onClick(View v) {
  265 + mViewPager.setCurrentItem(j);
  266 + }
  267 + });
  268 + }
  269 + }
  270 +
  271 + /**
  272 + * 根据标题生成我们的TextView
  273 + *
  274 + * @param text
  275 + * @return
  276 + */
  277 + private TextView generateTextView(String text) {
  278 + TextView tv = new TextView(getContext());
  279 + LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
  280 + lp.width = getScreenWidth() / mTabVisibleCount;
  281 + tv.setGravity(Gravity.CENTER);
  282 + tv.setTextColor(COLOR_TEXT_NORMAL);
  283 + tv.setText(text);
  284 + tv.setTextSize(TypedValue.TYPE_NULL, 34);
  285 + tv.setLayoutParams(lp);
  286 + return tv;
  287 + }
  288 +
  289 + /**
  290 + * 获得屏幕的宽度
  291 + *
  292 + * @return
  293 + */
  294 + public int getScreenWidth() {
  295 + WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE);
  296 + DisplayMetrics outMetrics = new DisplayMetrics();
  297 + wm.getDefaultDisplay().getMetrics(outMetrics);
  298 + return outMetrics.widthPixels;
  299 + }
  300 +
  301 + public LinearLayout getLinearLayout() {
  302 + return mItemsLayout;
  303 + }
  304 +}
0 305 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/anim/rightin.xml
... ... @@ -0,0 +1,13 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<set xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:interpolator="@android:anim/decelerate_interpolator">
  4 + <scale android:fromXScale="0.1" android:toXScale="1.0"
  5 + android:fromYScale="0.1" android:toYScale="1.0"
  6 + android:pivotX="50%p" android:pivotY="50%p"
  7 + android:duration="300" />
  8 + <!-- 这里为了看到动画演示效果,把动画持续时间设为3秒 -->
  9 + <alpha
  10 + android:fromAlpha="0.1"
  11 + android:toAlpha="1.0"
  12 + android:duration="300" />
  13 +</set>
0 14 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/anim/rightout.xml
... ... @@ -0,0 +1,14 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<set xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:interpolator="@android:anim/decelerate_interpolator"
  4 + android:zAdjustment="top">
  5 + <scale android:fromXScale="1.0" android:toXScale=".5"
  6 + android:fromYScale="1.0" android:toYScale=".5"
  7 + android:pivotX="50%p" android:pivotY="50%p"
  8 + android:duration="300" />
  9 + <!-- 系统内置的动画持续时间
  10 + android:duration="@android:integer/config_mediumAnimTime"
  11 + -->
  12 + <alpha android:fromAlpha="1.0" android:toAlpha="0"
  13 + android:duration="300"/>
  14 +</set>
0 15 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/color/btn_text_color.xml
... ... @@ -0,0 +1,9 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<selector xmlns:android="http://schemas.android.com/apk/res/android">
  3 +
  4 + <item android:state_selected="true" android:color="@color/login_text_blue"/>
  5 + <item android:state_focused="true" android:color="@color/login_text_blue"/>
  6 + <item android:state_pressed="true" android:color="@color/login_text_blue"/>
  7 + <item android:color="@color/login_text_black"/>
  8 +
  9 +</selector>
0 10 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/blue_btn_bg_normal.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="@color/login_text_blue" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="8dp"
  9 + android:bottomRightRadius="8dp"
  10 + android:topLeftRadius="8dp"
  11 + android:topRightRadius="8dp" />
  12 +
  13 + <stroke
  14 + android:width="1px"
  15 + android:color="@color/login_text_blue" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/blue_btn_bg_pressed.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="@color/login_text_blue" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="8dp"
  9 + android:bottomRightRadius="8dp"
  10 + android:topLeftRadius="8dp"
  11 + android:topRightRadius="8dp" />
  12 +
  13 + <stroke
  14 + android:width="1px"
  15 + android:color="@color/login_text_blue" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/btn_rect_normal.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="#ffffffff" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="0dp"
  9 + android:bottomRightRadius="8dp"
  10 + android:topLeftRadius="0dp"
  11 + android:topRightRadius="8dp" />
  12 +
  13 + <stroke
  14 + android:width="2px"
  15 + android:color="@color/login_edittext_normal" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/edittext_input_normal.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="#ffffffff" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="8dp"
  9 + android:bottomRightRadius="8dp"
  10 + android:topLeftRadius="8dp"
  11 + android:topRightRadius="8dp" />
  12 +
  13 + <stroke
  14 + android:width="2px"
  15 + android:color="@color/login_edittext_normal" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/edittext_input_pressed.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="#ffffffff" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="8dp"
  9 + android:bottomRightRadius="8dp"
  10 + android:topLeftRadius="8dp"
  11 + android:topRightRadius="8dp" />
  12 +
  13 + <stroke
  14 + android:width="2px"
  15 + android:color="@color/login_edittext_pressed" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/edittext_rect_input_normal.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="#ffffffff" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="8dp"
  9 + android:bottomRightRadius="0dp"
  10 + android:topLeftRadius="8dp"
  11 + android:topRightRadius="0dp" />
  12 +
  13 + <stroke
  14 + android:width="2px"
  15 + android:color="@color/login_edittext_normal" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/edittext_rect_input_pressed.xml
... ... @@ -0,0 +1,17 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<shape xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:shape="rectangle" >
  4 +
  5 + <solid android:color="#ffffffff" />
  6 +
  7 + <corners
  8 + android:bottomLeftRadius="8dp"
  9 + android:bottomRightRadius="0dp"
  10 + android:topLeftRadius="8dp"
  11 + android:topRightRadius="0dp" />
  12 +
  13 + <stroke
  14 + android:width="2px"
  15 + android:color="@color/login_edittext_pressed" />
  16 +
  17 +</shape>
0 18 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/selector_blue_btn_bg.xml
... ... @@ -0,0 +1,6 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<selector xmlns:android="http://schemas.android.com/apk/res/android">
  3 + <item android:drawable="@drawable/blue_btn_bg_pressed" android:state_pressed="true"/>
  4 + <item android:drawable="@drawable/blue_btn_bg_pressed" android:state_checked="true"/>
  5 + <item android:drawable="@drawable/blue_btn_bg_normal"/>
  6 +</selector>
0 7 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/selector_edittext_bg.xml
... ... @@ -0,0 +1,6 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<selector xmlns:android="http://schemas.android.com/apk/res/android">
  3 + <item android:drawable="@drawable/edittext_input_pressed" android:state_pressed="true"/>
  4 + <item android:drawable="@drawable/edittext_input_pressed" android:state_focused="true"/>
  5 + <item android:drawable="@drawable/edittext_input_normal"/>
  6 +</selector>
0 7 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/drawable/selector_edittext_rect_bg.xml
... ... @@ -0,0 +1,6 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<selector xmlns:android="http://schemas.android.com/apk/res/android">
  3 + <item android:drawable="@drawable/edittext_rect_input_pressed" android:state_pressed="true"/>
  4 + <item android:drawable="@drawable/edittext_rect_input_pressed" android:state_focused="true"/>
  5 + <item android:drawable="@drawable/edittext_rect_input_normal"/>
  6 +</selector>
0 7 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_chage_binding.xml
... ... @@ -0,0 +1,97 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical">
  7 + <RelativeLayout
  8 + android:id="@+id/title"
  9 + android:layout_width="match_parent"
  10 + android:layout_height="wrap_content"
  11 + android:background="@color/login_text_blue"
  12 + android:minHeight="50dp" >
  13 +
  14 + <ImageView
  15 + android:id="@+id/cancel"
  16 + android:layout_width="wrap_content"
  17 + android:layout_height="wrap_content"
  18 + android:layout_centerVertical="true"
  19 + android:paddingLeft="20dp"
  20 + android:paddingRight="20dp"
  21 + android:src="@mipmap/title_back" />
  22 +
  23 + <TextView
  24 + android:id="@+id/menu_title"
  25 + android:layout_width="wrap_content"
  26 + android:layout_height="wrap_content"
  27 + android:layout_centerInParent="true"
  28 + android:text="@string/string_electroniccard_change_bangding"
  29 + android:textColor="@android:color/white"
  30 + android:textSize="22sp" />
  31 + </RelativeLayout>
  32 + <RelativeLayout
  33 + android:layout_width="match_parent"
  34 + android:layout_height="match_parent"
  35 + android:layout_below="@id/title"
  36 + android:background="#ffffffff"
  37 + android:orientation="vertical"
  38 + android:paddingLeft="250dp"
  39 + android:paddingRight="250dp" >
  40 +
  41 + <EditText
  42 + android:id="@+id/et_phonenumber"
  43 + style="@style/login_register_edit_style"
  44 + android:layout_marginTop="150dp"
  45 + android:hint="手机号"
  46 + android:inputType="phone" />
  47 +
  48 + <TextView
  49 + android:id="@+id/phonenumber_error_hint"
  50 + style="@style/registererrhint_style"
  51 + android:layout_below="@id/et_phonenumber" />
  52 +
  53 + <LinearLayout
  54 + android:id="@+id/rl_authcode"
  55 + android:layout_width="match_parent"
  56 + android:layout_height="wrap_content"
  57 + android:layout_below="@id/et_phonenumber"
  58 + android:layout_marginTop="30dp"
  59 + android:orientation="horizontal">
  60 +
  61 + <EditText
  62 + android:id="@+id/et_authcode"
  63 + style="@style/login_register_edit_rect_style"
  64 + android:layout_marginRight="-4px"
  65 + android:layout_weight="1"
  66 + android:hint="验证码"
  67 + android:numeric="integer" />
  68 +
  69 + <Button
  70 + android:id="@+id/btn_authcode"
  71 + style="@style/login_register_btn_authcode_rect_style"
  72 + android:layout_marginLeft="0px"
  73 + android:layout_marginTop="0px"
  74 + android:layout_weight="2"
  75 + android:text="获取验证码"
  76 + android:textColor="@color/btn_text_color" />
  77 + </LinearLayout>
  78 +
  79 + <TextView
  80 + android:id="@+id/authcode_error_hint"
  81 + style="@style/registererrhint_style"
  82 + android:layout_below="@id/rl_authcode" />
  83 +
  84 + <TextView
  85 + android:id="@+id/password_error_hint"
  86 + style="@style/registererrhint_style"
  87 + android:layout_below="@id/rl_authcode" />
  88 +
  89 + <Button
  90 + android:id="@+id/btn_register"
  91 + style="@style/button_login_register_style"
  92 + android:layout_below="@id/rl_authcode"
  93 + android:layout_marginTop="30dp"
  94 + android:text="@string/ok" />
  95 + </RelativeLayout>
  96 +
  97 +</RelativeLayout>
0 98 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_change_card_info.xml
... ... @@ -0,0 +1,130 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical">
  7 +
  8 + <RelativeLayout
  9 + android:id="@+id/title"
  10 + android:layout_width="match_parent"
  11 + android:layout_height="wrap_content"
  12 + android:background="@color/login_text_blue"
  13 + android:minHeight="50dp">
  14 +
  15 + <ImageView
  16 + android:id="@+id/cancel"
  17 + android:layout_width="wrap_content"
  18 + android:layout_height="wrap_content"
  19 + android:layout_centerVertical="true"
  20 + android:paddingLeft="20dp"
  21 + android:paddingRight="20dp"
  22 + android:src="@mipmap/title_back" />
  23 +
  24 + <TextView
  25 + android:id="@+id/menu_title"
  26 + android:layout_width="wrap_content"
  27 + android:layout_height="wrap_content"
  28 + android:layout_centerInParent="true"
  29 + android:text="@string/string_electroniccard_info_change"
  30 + android:textColor="@android:color/white"
  31 + android:textSize="22sp" />
  32 + </RelativeLayout>
  33 +
  34 + <RelativeLayout
  35 + android:layout_width="match_parent"
  36 + android:layout_height="match_parent"
  37 + android:layout_below="@id/title"
  38 + android:background="#ffffffff"
  39 + android:orientation="vertical"
  40 + android:paddingLeft="250dp"
  41 + android:paddingRight="250dp">
  42 +
  43 + <EditText
  44 + android:id="@+id/et_phonenumber"
  45 + style="@style/login_register_edit_style"
  46 + android:layout_marginTop="150dp"
  47 + android:hint="手机号"
  48 + android:inputType="phone" />
  49 +
  50 + <TextView
  51 + android:id="@+id/phonenumber_error_hint"
  52 + style="@style/registererrhint_style"
  53 + android:layout_below="@id/et_phonenumber" />
  54 +
  55 + <LinearLayout
  56 + android:id="@+id/rl_authcode"
  57 + android:layout_width="match_parent"
  58 + android:layout_height="wrap_content"
  59 + android:layout_below="@id/et_phonenumber"
  60 + android:layout_marginTop="30dp"
  61 + android:orientation="horizontal">
  62 +
  63 + <EditText
  64 + android:id="@+id/et_authcode"
  65 + style="@style/login_register_edit_rect_style"
  66 + android:layout_marginRight="-4px"
  67 + android:layout_weight="1"
  68 + android:hint="验证码"
  69 + android:numeric="integer" />
  70 +
  71 + <Button
  72 + android:id="@+id/btn_authcode"
  73 + style="@style/login_register_btn_authcode_rect_style"
  74 + android:layout_marginLeft="0px"
  75 + android:layout_marginTop="0px"
  76 + android:layout_weight="2"
  77 + android:text="获取验证码"
  78 + android:textColor="@color/btn_text_color" />
  79 + </LinearLayout>
  80 +
  81 + <TextView
  82 + android:id="@+id/authcode_error_hint"
  83 + style="@style/registererrhint_style"
  84 + android:layout_below="@id/rl_authcode" />
  85 +
  86 + <RelativeLayout
  87 + android:id="@+id/pwd_rl"
  88 + android:layout_width="match_parent"
  89 + android:layout_height="wrap_content"
  90 + android:layout_below="@id/rl_authcode"
  91 + android:layout_marginTop="30dp">
  92 +
  93 + <EditText
  94 + android:id="@+id/et_newpassword"
  95 + style="@style/login_register_edit_style"
  96 + android:hint="请选择地区"
  97 + android:inputType="textPassword" />
  98 +
  99 + <ImageView
  100 + android:id="@+id/iv_pwd_change"
  101 + style="@style/iv_pwd_change_style" />
  102 + </RelativeLayout>
  103 +
  104 + <TextView
  105 + android:id="@+id/newpassword_error_hint"
  106 + style="@style/registererrhint_style"
  107 + android:layout_below="@id/pwd_rl" />
  108 +
  109 + <EditText
  110 + android:id="@+id/et_again_newpassword"
  111 + style="@style/login_register_edit_style"
  112 + android:layout_below="@id/pwd_rl"
  113 + android:layout_marginTop="30dp"
  114 + android:hint="请选择详细地址"
  115 + android:inputType="textPassword" />
  116 +
  117 + <TextView
  118 + android:id="@+id/again_newpassword_error_hint"
  119 + style="@style/registererrhint_style"
  120 + android:layout_below="@id/et_again_newpassword" />
  121 +
  122 + <Button
  123 + android:id="@+id/btn_ok"
  124 + style="@style/button_login_register_style"
  125 + android:layout_below="@id/et_again_newpassword"
  126 + android:layout_marginTop="30dp"
  127 + android:text="@string/ok" />
  128 + </RelativeLayout>
  129 +
  130 +</RelativeLayout>
0 131 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_changepsword.xml
... ... @@ -0,0 +1,99 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical" >
  7 +
  8 + <RelativeLayout
  9 + android:id="@+id/title"
  10 + android:layout_width="match_parent"
  11 + android:layout_height="wrap_content"
  12 + android:background="@color/login_text_blue"
  13 + android:minHeight="50dp" >
  14 +
  15 + <ImageView
  16 + android:id="@+id/cancel"
  17 + android:layout_width="wrap_content"
  18 + android:layout_height="wrap_content"
  19 + android:layout_centerVertical="true"
  20 + android:paddingLeft="20dp"
  21 + android:paddingRight="20dp"
  22 + android:src="@mipmap/title_back" />
  23 +
  24 + <TextView
  25 + android:id="@+id/menu_title"
  26 + android:layout_width="wrap_content"
  27 + android:layout_height="wrap_content"
  28 + android:layout_centerInParent="true"
  29 + android:text="@string/string_menu_title"
  30 + android:textColor="@android:color/white"
  31 + android:textSize="22sp" />
  32 + </RelativeLayout>
  33 +
  34 + <RelativeLayout
  35 + android:layout_width="match_parent"
  36 + android:layout_height="match_parent"
  37 + android:layout_below="@id/title"
  38 + android:background="#ffffffff"
  39 + android:orientation="vertical"
  40 + android:paddingLeft="250dp"
  41 + android:paddingRight="250dp" >
  42 +
  43 + <RelativeLayout
  44 + android:id="@+id/pwd_rl"
  45 + android:layout_width="match_parent"
  46 + android:layout_height="wrap_content"
  47 + android:layout_marginTop="100dp"
  48 + >
  49 + <EditText
  50 + android:id="@+id/et_oldpassword"
  51 + style="@style/login_register_edit_style"
  52 + android:hint="输入原密码"
  53 + android:inputType="textPassword" />
  54 + <ImageView
  55 + android:id="@+id/iv_pwd_change"
  56 + style="@style/iv_pwd_change_style"
  57 + />
  58 + </RelativeLayout>
  59 +
  60 + <TextView
  61 + android:id="@+id/oldpassword_error_hint"
  62 + style="@style/registererrhint_style"
  63 + android:layout_below="@id/pwd_rl" />
  64 +
  65 + <EditText
  66 + android:id="@+id/et_newpassword"
  67 + style="@style/login_register_edit_style"
  68 + android:layout_below="@id/pwd_rl"
  69 + android:layout_marginTop="30dp"
  70 + android:hint="密码为英文和数字组成,最少8位"
  71 + android:inputType="textPassword" />
  72 +
  73 + <TextView
  74 + android:id="@+id/newpassword_error_hint"
  75 + style="@style/registererrhint_style"
  76 + android:layout_below="@id/et_newpassword" />
  77 +
  78 + <EditText
  79 + android:id="@+id/et_again_newpassword"
  80 + style="@style/login_register_edit_style"
  81 + android:layout_below="@id/et_newpassword"
  82 + android:layout_marginTop="30dp"
  83 + android:hint="再次输入新密码"
  84 + android:inputType="textPassword" />
  85 +
  86 + <TextView
  87 + android:id="@+id/again_newpassword_error_hint"
  88 + style="@style/registererrhint_style"
  89 + android:layout_below="@id/et_again_newpassword" />
  90 +
  91 + <Button
  92 + android:id="@+id/btn_ok"
  93 + style="@style/button_login_register_style"
  94 + android:layout_below="@id/et_again_newpassword"
  95 + android:layout_marginTop="30dp"
  96 + android:text="确 定" />
  97 + </RelativeLayout>
  98 +
  99 +</RelativeLayout>
0 100 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_electronicard_phone.xml
... ... @@ -0,0 +1,97 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical">
  7 + <RelativeLayout
  8 + android:id="@+id/title"
  9 + android:layout_width="match_parent"
  10 + android:layout_height="wrap_content"
  11 + android:background="@color/login_text_blue"
  12 + android:minHeight="50dp" >
  13 +
  14 + <ImageView
  15 + android:id="@+id/cancel"
  16 + android:layout_width="wrap_content"
  17 + android:layout_height="wrap_content"
  18 + android:layout_centerVertical="true"
  19 + android:paddingLeft="20dp"
  20 + android:paddingRight="20dp"
  21 + android:src="@mipmap/title_back" />
  22 +
  23 + <TextView
  24 + android:id="@+id/menu_title"
  25 + android:layout_width="wrap_content"
  26 + android:layout_height="wrap_content"
  27 + android:layout_centerInParent="true"
  28 + android:text="@string/string_electroniccard_info_change"
  29 + android:textColor="@android:color/white"
  30 + android:textSize="22sp" />
  31 + </RelativeLayout>
  32 + <RelativeLayout
  33 + android:layout_width="match_parent"
  34 + android:layout_height="match_parent"
  35 + android:layout_below="@id/title"
  36 + android:background="#ffffffff"
  37 + android:orientation="vertical"
  38 + android:paddingLeft="250dp"
  39 + android:paddingRight="250dp" >
  40 +
  41 + <EditText
  42 + android:id="@+id/et_phonenumber"
  43 + style="@style/login_register_edit_style"
  44 + android:layout_marginTop="150dp"
  45 + android:hint="手机号"
  46 + android:inputType="phone" />
  47 +
  48 + <TextView
  49 + android:id="@+id/phonenumber_error_hint"
  50 + style="@style/registererrhint_style"
  51 + android:layout_below="@id/et_phonenumber" />
  52 +
  53 + <LinearLayout
  54 + android:id="@+id/rl_authcode"
  55 + android:layout_width="match_parent"
  56 + android:layout_height="wrap_content"
  57 + android:layout_below="@id/et_phonenumber"
  58 + android:layout_marginTop="30dp"
  59 + android:orientation="horizontal">
  60 +
  61 + <EditText
  62 + android:id="@+id/et_authcode"
  63 + style="@style/login_register_edit_rect_style"
  64 + android:layout_marginRight="-4px"
  65 + android:layout_weight="1"
  66 + android:hint="验证码"
  67 + android:numeric="integer" />
  68 +
  69 + <Button
  70 + android:id="@+id/btn_authcode"
  71 + style="@style/login_register_btn_authcode_rect_style"
  72 + android:layout_marginLeft="0px"
  73 + android:layout_marginTop="0px"
  74 + android:layout_weight="2"
  75 + android:text="获取验证码"
  76 + android:textColor="@color/btn_text_color" />
  77 + </LinearLayout>
  78 +
  79 + <TextView
  80 + android:id="@+id/authcode_error_hint"
  81 + style="@style/registererrhint_style"
  82 + android:layout_below="@id/rl_authcode" />
  83 +
  84 + <TextView
  85 + android:id="@+id/password_error_hint"
  86 + style="@style/registererrhint_style"
  87 + android:layout_below="@id/pwd_rl" />
  88 +
  89 + <Button
  90 + android:id="@+id/btn_register"
  91 + style="@style/button_login_register_style"
  92 + android:layout_below="@id/rl_authcode"
  93 + android:layout_marginTop="30dp"
  94 + android:text="@string/ok" />
  95 + </RelativeLayout>
  96 +
  97 +</RelativeLayout>
0 98 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_electroniccard_validation.xml
... ... @@ -0,0 +1,97 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical">
  7 + <RelativeLayout
  8 + android:id="@+id/title"
  9 + android:layout_width="match_parent"
  10 + android:layout_height="wrap_content"
  11 + android:background="@color/login_text_blue"
  12 + android:minHeight="50dp" >
  13 +
  14 + <ImageView
  15 + android:id="@+id/cancel"
  16 + android:layout_width="wrap_content"
  17 + android:layout_height="wrap_content"
  18 + android:layout_centerVertical="true"
  19 + android:paddingLeft="20dp"
  20 + android:paddingRight="20dp"
  21 + android:src="@mipmap/title_back" />
  22 +
  23 + <TextView
  24 + android:id="@+id/menu_title"
  25 + android:layout_width="wrap_content"
  26 + android:layout_height="wrap_content"
  27 + android:layout_centerInParent="true"
  28 + android:text="@string/string_electroniccard_info_change"
  29 + android:textColor="@android:color/white"
  30 + android:textSize="22sp" />
  31 + </RelativeLayout>
  32 + <RelativeLayout
  33 + android:layout_width="match_parent"
  34 + android:layout_height="match_parent"
  35 + android:layout_below="@id/title"
  36 + android:background="#ffffffff"
  37 + android:orientation="vertical"
  38 + android:paddingLeft="250dp"
  39 + android:paddingRight="250dp" >
  40 +
  41 + <EditText
  42 + android:id="@+id/et_phonenumber"
  43 + style="@style/login_register_edit_style"
  44 + android:layout_marginTop="150dp"
  45 + android:hint="手机号"
  46 + android:inputType="phone" />
  47 +
  48 + <TextView
  49 + android:id="@+id/phonenumber_error_hint"
  50 + style="@style/registererrhint_style"
  51 + android:layout_below="@id/et_phonenumber" />
  52 +
  53 + <LinearLayout
  54 + android:id="@+id/rl_authcode"
  55 + android:layout_width="match_parent"
  56 + android:layout_height="wrap_content"
  57 + android:layout_below="@id/et_phonenumber"
  58 + android:layout_marginTop="30dp"
  59 + android:orientation="horizontal">
  60 +
  61 + <EditText
  62 + android:id="@+id/et_authcode"
  63 + style="@style/login_register_edit_rect_style"
  64 + android:layout_marginRight="-4px"
  65 + android:layout_weight="1"
  66 + android:hint="验证码"
  67 + android:numeric="integer" />
  68 +
  69 + <Button
  70 + android:id="@+id/btn_authcode"
  71 + style="@style/login_register_btn_authcode_rect_style"
  72 + android:layout_marginLeft="0px"
  73 + android:layout_marginTop="0px"
  74 + android:layout_weight="2"
  75 + android:text="获取验证码"
  76 + android:textColor="@color/btn_text_color" />
  77 + </LinearLayout>
  78 +
  79 + <TextView
  80 + android:id="@+id/authcode_error_hint"
  81 + style="@style/registererrhint_style"
  82 + android:layout_below="@id/rl_authcode" />
  83 +
  84 + <TextView
  85 + android:id="@+id/password_error_hint"
  86 + style="@style/registererrhint_style"
  87 + android:layout_below="@id/pwd_rl" />
  88 +
  89 + <Button
  90 + android:id="@+id/btn_register"
  91 + style="@style/button_login_register_style"
  92 + android:layout_below="@id/rl_authcode"
  93 + android:layout_marginTop="30dp"
  94 + android:text="@string/string_regist_next" />
  95 + </RelativeLayout>
  96 +
  97 +</RelativeLayout>
0 98 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_forgetpsword.xml
... ... @@ -0,0 +1,130 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical">
  7 +
  8 + <RelativeLayout
  9 + android:id="@+id/title"
  10 + android:layout_width="match_parent"
  11 + android:layout_height="wrap_content"
  12 + android:background="@color/login_text_blue"
  13 + android:minHeight="50dp">
  14 +
  15 + <ImageView
  16 + android:id="@+id/cancel"
  17 + android:layout_width="wrap_content"
  18 + android:layout_height="wrap_content"
  19 + android:layout_centerVertical="true"
  20 + android:paddingLeft="20dp"
  21 + android:paddingRight="20dp"
  22 + android:src="@mipmap/title_back" />
  23 +
  24 + <TextView
  25 + android:id="@+id/menu_title"
  26 + android:layout_width="wrap_content"
  27 + android:layout_height="wrap_content"
  28 + android:layout_centerInParent="true"
  29 + android:text="@string/string_menu_title"
  30 + android:textColor="@android:color/white"
  31 + android:textSize="22sp" />
  32 + </RelativeLayout>
  33 +
  34 + <RelativeLayout
  35 + android:layout_width="match_parent"
  36 + android:layout_height="match_parent"
  37 + android:layout_below="@id/title"
  38 + android:background="#ffffffff"
  39 + android:orientation="vertical"
  40 + android:paddingLeft="250dp"
  41 + android:paddingRight="250dp">
  42 +
  43 + <EditText
  44 + android:id="@+id/et_phonenumber"
  45 + style="@style/login_register_edit_style"
  46 + android:layout_marginTop="150dp"
  47 + android:hint="手机号"
  48 + android:inputType="phone" />
  49 +
  50 + <TextView
  51 + android:id="@+id/phonenumber_error_hint"
  52 + style="@style/registererrhint_style"
  53 + android:layout_below="@id/et_phonenumber" />
  54 +
  55 + <LinearLayout
  56 + android:id="@+id/rl_authcode"
  57 + android:layout_width="match_parent"
  58 + android:layout_height="wrap_content"
  59 + android:layout_below="@id/et_phonenumber"
  60 + android:layout_marginTop="30dp"
  61 + android:orientation="horizontal">
  62 +
  63 + <EditText
  64 + android:id="@+id/et_authcode"
  65 + style="@style/login_register_edit_rect_style"
  66 + android:layout_marginRight="-4px"
  67 + android:layout_weight="1"
  68 + android:hint="验证码"
  69 + android:numeric="integer" />
  70 +
  71 + <Button
  72 + android:id="@+id/btn_authcode"
  73 + style="@style/login_register_btn_authcode_rect_style"
  74 + android:layout_marginLeft="0px"
  75 + android:layout_marginTop="0px"
  76 + android:layout_weight="2"
  77 + android:text="获取验证码"
  78 + android:textColor="@color/btn_text_color" />
  79 + </LinearLayout>
  80 +
  81 + <TextView
  82 + android:id="@+id/authcode_error_hint"
  83 + style="@style/registererrhint_style"
  84 + android:layout_below="@id/rl_authcode" />
  85 +
  86 + <RelativeLayout
  87 + android:id="@+id/pwd_rl"
  88 + android:layout_width="match_parent"
  89 + android:layout_height="wrap_content"
  90 + android:layout_below="@id/rl_authcode"
  91 + android:layout_marginTop="30dp">
  92 +
  93 + <EditText
  94 + android:id="@+id/et_newpassword"
  95 + style="@style/login_register_edit_style"
  96 + android:hint="密码为英文和数字组成,最少8位"
  97 + android:inputType="textPassword" />
  98 +
  99 + <ImageView
  100 + android:id="@+id/iv_pwd_change"
  101 + style="@style/iv_pwd_change_style" />
  102 + </RelativeLayout>
  103 +
  104 + <TextView
  105 + android:id="@+id/newpassword_error_hint"
  106 + style="@style/registererrhint_style"
  107 + android:layout_below="@id/pwd_rl" />
  108 +
  109 + <EditText
  110 + android:id="@+id/et_again_newpassword"
  111 + style="@style/login_register_edit_style"
  112 + android:layout_below="@id/pwd_rl"
  113 + android:layout_marginTop="30dp"
  114 + android:hint="再次输入新密码"
  115 + android:inputType="textPassword" />
  116 +
  117 + <TextView
  118 + android:id="@+id/again_newpassword_error_hint"
  119 + style="@style/registererrhint_style"
  120 + android:layout_below="@id/et_again_newpassword" />
  121 +
  122 + <Button
  123 + android:id="@+id/btn_ok"
  124 + style="@style/button_login_register_style"
  125 + android:layout_below="@id/et_again_newpassword"
  126 + android:layout_marginTop="30dp"
  127 + android:text="确 定" />
  128 + </RelativeLayout>
  129 +
  130 +</RelativeLayout>
0 131 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_loginandregister.xml
... ... @@ -0,0 +1,39 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + xmlns:tools="http://schemas.android.com/tools"
  4 + android:id="@android:id/tabhost"
  5 + android:layout_width="fill_parent"
  6 + android:layout_height="fill_parent"
  7 + android:background="@color/white"
  8 + tools:context="com.hjx.personalcenter.activity.LoginAndRegisterActivity">
  9 +
  10 +
  11 + <ImageView
  12 + android:id="@+id/iv_logo"
  13 + android:layout_width="wrap_content"
  14 + android:layout_height="wrap_content"
  15 + android:layout_centerHorizontal="true"
  16 + android:layout_marginTop="55dp"
  17 + android:layout_marginBottom="0dp"
  18 + android:src="@mipmap/logo" />
  19 +
  20 + <LinearLayout
  21 + android:layout_width="wrap_content"
  22 + android:layout_height="wrap_content"
  23 + android:layout_below="@+id/iv_logo"
  24 + android:orientation="vertical">
  25 +
  26 + <com.hjx.personalcenter.thirdparty.SlidingTabLayout
  27 + android:id="@+id/TabLayout_id"
  28 + android:layout_width="match_parent"
  29 + android:layout_height="50dp">
  30 + </com.hjx.personalcenter.thirdparty.SlidingTabLayout>
  31 +
  32 + <android.support.v4.view.ViewPager
  33 + android:id="@+id/viewpager_login"
  34 + android:layout_width="match_parent"
  35 + android:layout_height="match_parent"
  36 + android:background="@color/white" />
  37 + </LinearLayout>
  38 +
  39 +</RelativeLayout>
0 40 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/activity_main.xml
... ... @@ -0,0 +1,11 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent">
  5 +
  6 + <TextView
  7 + android:id="@+id/ssss"
  8 + android:layout_width="wrap_content"
  9 + android:layout_height="wrap_content"
  10 + android:text="Hello World!" />
  11 +</RelativeLayout>
... ...
PersonalCenter/app/src/main/res/layout/activity_registerinfo.xml
... ... @@ -0,0 +1,78 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent">
  5 + <RelativeLayout
  6 + android:id="@+id/title"
  7 + android:layout_width="match_parent"
  8 + android:layout_height="wrap_content"
  9 + android:background="@color/login_text_blue"
  10 + android:minHeight="50dp" >
  11 +
  12 + <ImageView
  13 + android:id="@+id/cancel"
  14 + android:layout_width="wrap_content"
  15 + android:layout_height="wrap_content"
  16 + android:layout_centerVertical="true"
  17 + android:paddingLeft="20dp"
  18 + android:paddingRight="20dp"
  19 + android:visibility="gone"
  20 + android:src="@mipmap/title_back" />
  21 +
  22 + <TextView
  23 + android:id="@+id/menu_title"
  24 + android:layout_width="wrap_content"
  25 + android:layout_height="wrap_content"
  26 + android:layout_centerInParent="true"
  27 + android:text="@string/string_regist_info"
  28 + android:textColor="@android:color/white"
  29 + android:textSize="22sp" />
  30 + </RelativeLayout>
  31 + <LinearLayout
  32 + android:layout_width="match_parent"
  33 + android:layout_height="match_parent"
  34 + android:layout_below="@id/title"
  35 + android:background="#ffffffff"
  36 + android:orientation="vertical"
  37 + android:paddingLeft="250dp"
  38 + android:paddingRight="250dp">
  39 + <EditText
  40 + android:id="@+id/et_username"
  41 + style="@style/login_register_edit_style"
  42 + android:layout_marginTop="100dp"
  43 + android:textColor="@color/login_text_black"
  44 + android:hint="@string/string_regist_username" />
  45 + <TextView
  46 + android:id="@+id/et_region"
  47 + style="@style/login_register_edit_style"
  48 + android:layout_marginTop="30dp"
  49 + android:textColor="@color/login_text_black"
  50 + android:hint="@string/string_regist_region" />
  51 +
  52 + <TextView
  53 + android:id="@+id/et_grade"
  54 + style="@style/login_register_edit_style"
  55 + android:layout_marginTop="30dp"
  56 + android:textColor="@color/login_text_black"
  57 + android:hint="@string/string_regist_grade" />
  58 +
  59 + <TextView
  60 + android:id="@+id/et_school"
  61 + style="@style/login_register_edit_style"
  62 + android:layout_marginTop="30dp"
  63 + android:textColor="@color/login_text_black"
  64 + android:hint="@string/string_regist_school" />
  65 + <Button
  66 + android:id="@+id/btn_ok"
  67 + style="@style/button_login_register_style"
  68 + android:layout_marginTop="30dp"
  69 + android:text="@string/string_regist_next" />
  70 +
  71 +
  72 +
  73 + </LinearLayout>
  74 +
  75 +
  76 +
  77 +
  78 +</RelativeLayout>
0 79 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/fragment_loginandregister_login.xml
... ... @@ -0,0 +1,44 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical"
  7 + android:paddingLeft="250dp"
  8 + android:paddingRight="250dp" >
  9 +
  10 +
  11 + <EditText
  12 + android:id="@+id/et_phonenumber"
  13 + style="@style/login_register_edit_style"
  14 + android:layout_marginTop="20dp"
  15 + android:textColor="@color/login_text_black"
  16 + android:inputType="phone"
  17 + android:hint="手机号" />
  18 +
  19 + <EditText
  20 + android:id="@+id/et_password"
  21 + style="@style/login_register_edit_style"
  22 + android:layout_below="@id/et_phonenumber"
  23 + android:layout_marginTop="30dp"
  24 + android:textColor="@color/login_text_black"
  25 + android:hint="密码"
  26 + android:inputType="textPassword" />
  27 +
  28 + <Button
  29 + android:id="@+id/btn_login"
  30 + style="@style/button_login_register_style"
  31 + android:layout_below="@id/et_password"
  32 + android:layout_marginTop="30dp"
  33 + android:text="登 录" />
  34 +
  35 + <TextView
  36 + android:id="@+id/tv_forget_pwd"
  37 + style="@style/text_forget_pwd_style"
  38 + android:layout_alignParentRight="true"
  39 + android:layout_below="@id/btn_login"
  40 + android:layout_marginTop="15dp"
  41 + android:text="@string/forget_pwd"
  42 + android:textColor="@color/btn_text_color" />
  43 +
  44 +</RelativeLayout>
0 45 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/layout/fragment_loginandregister_register.xml
... ... @@ -0,0 +1,83 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3 + android:layout_width="match_parent"
  4 + android:layout_height="match_parent"
  5 + android:background="#ffffffff"
  6 + android:orientation="vertical"
  7 + android:paddingLeft="250dp"
  8 + android:paddingRight="250dp">
  9 +
  10 + <EditText
  11 + android:id="@+id/et_phonenumber"
  12 + style="@style/login_register_edit_style"
  13 + android:layout_marginTop="20dp"
  14 + android:hint="手机号"
  15 + android:inputType="phone" />
  16 +
  17 + <TextView
  18 + android:id="@+id/phonenumber_error_hint"
  19 + style="@style/registererrhint_style"
  20 + android:layout_below="@id/et_phonenumber" />
  21 +
  22 + <LinearLayout
  23 + android:id="@+id/rl_authcode"
  24 + android:layout_width="match_parent"
  25 + android:layout_height="wrap_content"
  26 + android:layout_below="@id/et_phonenumber"
  27 + android:layout_marginTop="30dp"
  28 + android:orientation="horizontal">
  29 +
  30 + <EditText
  31 + android:id="@+id/et_authcode"
  32 + style="@style/login_register_edit_rect_style"
  33 + android:layout_marginRight="-4px"
  34 + android:layout_weight="1"
  35 + android:hint="验证码"
  36 + android:numeric="integer" />
  37 +
  38 + <Button
  39 + android:id="@+id/btn_authcode"
  40 + style="@style/login_register_btn_authcode_rect_style"
  41 + android:layout_marginLeft="0px"
  42 + android:layout_marginTop="0px"
  43 + android:layout_weight="2"
  44 + android:text="获取验证码"
  45 + android:textColor="@color/btn_text_color" />
  46 + </LinearLayout>
  47 +
  48 + <TextView
  49 + android:id="@+id/authcode_error_hint"
  50 + style="@style/registererrhint_style"
  51 + android:layout_below="@id/rl_authcode" />
  52 +
  53 + <RelativeLayout
  54 + android:id="@+id/pwd_rl"
  55 + android:layout_width="match_parent"
  56 + android:layout_height="wrap_content"
  57 + android:layout_below="@id/rl_authcode"
  58 + android:layout_marginTop="30dp">
  59 +
  60 + <EditText
  61 + android:id="@+id/et_password"
  62 + style="@style/login_register_edit_style"
  63 + android:hint="密码为英文和数字组成,最少8位"
  64 + android:inputType="textPassword" />
  65 +
  66 + <ImageView
  67 + android:id="@+id/iv_pwd_change"
  68 + style="@style/iv_pwd_change_style" />
  69 + </RelativeLayout>
  70 +
  71 + <TextView
  72 + android:id="@+id/password_error_hint"
  73 + style="@style/registererrhint_style"
  74 + android:layout_below="@id/pwd_rl" />
  75 +
  76 + <Button
  77 + android:id="@+id/btn_register"
  78 + style="@style/button_login_register_style"
  79 + android:layout_below="@id/pwd_rl"
  80 + android:layout_marginTop="30dp"
  81 + android:text="立即注册" />
  82 +
  83 +</RelativeLayout>
0 84 \ No newline at end of file
... ...
PersonalCenter/app/src/main/res/mipmap-hdpi/ic_launcher.png

3.34 KB

PersonalCenter/app/src/main/res/mipmap-mdpi/ic_launcher.png

2.15 KB

PersonalCenter/app/src/main/res/mipmap-xhdpi/blank.PNG

171 Bytes

PersonalCenter/app/src/main/res/mipmap-xhdpi/ic_launcher.png

4.73 KB

PersonalCenter/app/src/main/res/mipmap-xhdpi/logo.png

21.1 KB

PersonalCenter/app/src/main/res/mipmap-xhdpi/pwd_hide.png

561 Bytes

PersonalCenter/app/src/main/res/mipmap-xhdpi/title_back.png

544 Bytes

PersonalCenter/app/src/main/res/mipmap-xxhdpi/ic_launcher.png

7.54 KB

PersonalCenter/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png

4.73 KB

PersonalCenter/app/src/main/res/values-w820dp/dimens.xml
... ... @@ -0,0 +1,6 @@
  1 +<resources>
  2 + <!-- Example customization of dimensions originally defined in res/values/dimens.xml
  3 + (such as screen margins) for screens with more than 820dp of available width. This
  4 + would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively). -->
  5 + <dimen name="activity_horizontal_margin">64dp</dimen>
  6 +</resources>
... ...
PersonalCenter/app/src/main/res/values/colors.xml
... ... @@ -0,0 +1,13 @@
  1 +<?xml version="1.0" encoding="utf-8"?>
  2 +<resources>
  3 + <color name="colorPrimary">#3F51B5</color>
  4 + <color name="colorPrimaryDark">#303F9F</color>
  5 + <color name="colorAccent">#FF4081</color>
  6 + <color name="white">#ffffffff</color>
  7 + <color name="login_edittext_hint">#afafaf</color>
  8 + <color name="login_text_blue">#1cb8ff</color>
  9 + <color name="login_text_black">#313131</color>
  10 + <color name="login_edittext_normal">#d4d4d4</color>
  11 + <color name="error_hint">#ED1c24</color>
  12 + <color name="login_edittext_pressed">#1cb8ff</color>
  13 +</resources>
... ...
PersonalCenter/app/src/main/res/values/dimens.xml
... ... @@ -0,0 +1,5 @@
  1 +<resources>
  2 + <!-- Default screen margins, per the Android Design guidelines. -->
  3 + <dimen name="activity_horizontal_margin">16dp</dimen>
  4 + <dimen name="activity_vertical_margin">16dp</dimen>
  5 +</resources>
... ...
PersonalCenter/app/src/main/res/values/strings.xml
... ... @@ -0,0 +1,23 @@
  1 +<resources>
  2 + <string name="app_name">PersonalCenter</string>
  3 +
  4 +
  5 +
  6 + //登录注册
  7 + <string name="cancel">取 消</string>
  8 + <string name="ok">确 定</string>
  9 + <string name="forget_pwd">忘记密码</string>
  10 + <string name="string_menu_title">修改密码</string>
  11 + <string name="string_regist_info">填写注册信息</string>
  12 + <string name="string_regist_username">用户名</string>
  13 + <string name="string_regist_region">地区</string>
  14 + <string name="string_regist_grade">年级</string>
  15 + <string name="string_regist_school">学校</string>
  16 + <string name="string_regist_next">下一步</string>
  17 + //电子保卡
  18 + <string name="string_electroniccard_info_title">填写保卡信息</string>
  19 + <string name="string_electroniccard_info_change">修改保卡信息</string>
  20 + <string name="string_electroniccard_change_bangding">更换绑定</string>
  21 +
  22 +
  23 +</resources>
... ...
PersonalCenter/app/src/main/res/values/styles.xml
... ... @@ -0,0 +1,82 @@
  1 +<resources>
  2 +
  3 + <!-- Base application theme. -->
  4 + <style name="AppTheme" parent="Theme.AppCompat">
  5 + <!-- Customize your theme here. -->
  6 + <item name="colorPrimary">@color/colorPrimary</item>
  7 + <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
  8 + <item name="colorAccent">@color/colorAccent</item>
  9 + </style>
  10 +
  11 + <style name="login_register_edit_style">
  12 + <item name="android:textSize">19sp</item>
  13 + <item name="android:singleLine">true</item>
  14 + <item name="android:background">@drawable/selector_edittext_bg</item>
  15 + <item name="android:layout_width">match_parent</item>
  16 + <item name="android:layout_height">wrap_content</item>
  17 + <item name="android:textColorHint">@color/login_edittext_hint</item>
  18 + <item name="android:padding">10dp</item>
  19 + </style>
  20 +
  21 + <style name="login_register_edit_rect_style">
  22 + <item name="android:textSize">19sp</item>
  23 + <item name="android:singleLine">true</item>
  24 + <item name="android:background">@drawable/selector_edittext_rect_bg</item>
  25 + <item name="android:layout_width">match_parent</item>
  26 + <item name="android:layout_height">wrap_content</item>
  27 + <item name="android:textColorHint">@color/login_edittext_hint</item>
  28 + <item name="android:padding">10dp</item>
  29 + </style>
  30 +
  31 + <style name="login_register_btn_authcode_rect_style">
  32 + <item name="android:textSize">19sp</item>
  33 + <item name="android:singleLine">true</item>
  34 + <item name="android:background">@drawable/btn_rect_normal</item>
  35 + <item name="android:layout_width">match_parent</item>
  36 + <item name="android:layout_height">wrap_content</item>
  37 + <item name="android:textColorHint">@color/login_edittext_hint</item>
  38 + <item name="android:padding">10dp</item>
  39 + </style>
  40 + <style name="text_login_register_style" >
  41 + <item name="android:layout_width">wrap_content</item>
  42 + <item name="android:layout_height">wrap_content</item>
  43 + <item name="android:textSize">22sp</item>
  44 + <item name="android:gravity">center</item>
  45 + <item name="android:padding">10dp</item>
  46 + </style>
  47 + <style name="button_login_register_style">
  48 + <item name="android:layout_width">match_parent</item>
  49 + <item name="android:layout_height">wrap_content</item>
  50 + <item name="android:background">@drawable/selector_blue_btn_bg</item>
  51 + <item name="android:textSize">23sp</item>
  52 + <item name="android:gravity">center</item>
  53 + <item name="android:padding">10dp</item>
  54 + <item name="android:textColor">@android:color/white</item>
  55 + </style>
  56 + <style name="text_forget_pwd_style" >
  57 + <item name="android:layout_width">wrap_content</item>
  58 + <item name="android:layout_height">wrap_content</item>
  59 + <item name="android:textSize">18sp</item>
  60 + <item name="android:gravity">center</item>
  61 + <item name="android:padding">8dp</item>
  62 + </style>
  63 + <style name="registererrhint_style">
  64 + <item name="android:textSize">14dip</item>
  65 + <item name="android:layout_width">match_parent</item>
  66 + <item name="android:layout_height">wrap_content</item>
  67 + <item name="android:textColor">@color/error_hint</item>
  68 + <item name="android:layout_marginTop">5dip</item>
  69 + </style>
  70 + <style name="iv_pwd_change_style">
  71 + <item name="android:layout_width">wrap_content</item>
  72 + <item name="android:layout_height">wrap_content</item>
  73 + <item name="android:background">@mipmap/pwd_hide</item>
  74 + <item name="android:layout_alignParentRight">true</item>
  75 + <item name="android:layout_centerVertical">true</item>
  76 + <item name="android:layout_marginRight">15dp</item>
  77 + </style>
  78 +
  79 +
  80 +
  81 +
  82 +</resources>
... ...
PersonalCenter/app/src/test/java/com/hjx/personalcenter/ExampleUnitTest.java
... ... @@ -0,0 +1,17 @@
  1 +package com.hjx.personalcenter;
  2 +
  3 +import org.junit.Test;
  4 +
  5 +import static org.junit.Assert.*;
  6 +
  7 +/**
  8 + * Example local unit test, which will execute on the development machine (host).
  9 + *
  10 + * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
  11 + */
  12 +public class ExampleUnitTest {
  13 + @Test
  14 + public void addition_isCorrect() throws Exception {
  15 + assertEquals(4, 2 + 2);
  16 + }
  17 +}
0 18 \ No newline at end of file
... ...
PersonalCenter/build.gradle
... ... @@ -0,0 +1,23 @@
  1 +// Top-level build file where you can add configuration options common to all sub-projects/modules.
  2 +
  3 +buildscript {
  4 + repositories {
  5 + jcenter()
  6 + }
  7 + dependencies {
  8 + classpath 'com.android.tools.build:gradle:2.2.2'
  9 +
  10 + // NOTE: Do not place your application dependencies here; they belong
  11 + // in the individual module build.gradle files
  12 + }
  13 +}
  14 +
  15 +allprojects {
  16 + repositories {
  17 + jcenter()
  18 + }
  19 +}
  20 +
  21 +task clean(type: Delete) {
  22 + delete rootProject.buildDir
  23 +}
... ...
PersonalCenter/gradle.properties
... ... @@ -0,0 +1,17 @@
  1 +# Project-wide Gradle settings.
  2 +
  3 +# IDE (e.g. Android Studio) users:
  4 +# Gradle settings configured through the IDE *will override*
  5 +# any settings specified in this file.
  6 +
  7 +# For more details on how to configure your build environment visit
  8 +# http://www.gradle.org/docs/current/userguide/build_environment.html
  9 +
  10 +# Specifies the JVM arguments used for the daemon process.
  11 +# The setting is particularly useful for tweaking memory settings.
  12 +org.gradle.jvmargs=-Xmx1536m
  13 +
  14 +# When configured, Gradle will run in incubating parallel mode.
  15 +# This option should only be used with decoupled projects. More details, visit
  16 +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
  17 +# org.gradle.parallel=true
... ...
PersonalCenter/gradle/wrapper/gradle-wrapper.jar
No preview for this file type
PersonalCenter/gradle/wrapper/gradle-wrapper.properties
... ... @@ -0,0 +1,6 @@
  1 +#Mon Dec 28 10:00:20 PST 2015
  2 +distributionBase=GRADLE_USER_HOME
  3 +distributionPath=wrapper/dists
  4 +zipStoreBase=GRADLE_USER_HOME
  5 +zipStorePath=wrapper/dists
  6 +distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
... ...
PersonalCenter/gradlew
... ... @@ -0,0 +1,160 @@
  1 +#!/usr/bin/env bash
  2 +
  3 +##############################################################################
  4 +##
  5 +## Gradle start up script for UN*X
  6 +##
  7 +##############################################################################
  8 +
  9 +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
  10 +DEFAULT_JVM_OPTS=""
  11 +
  12 +APP_NAME="Gradle"
  13 +APP_BASE_NAME=`basename "$0"`
  14 +
  15 +# Use the maximum available, or set MAX_FD != -1 to use that value.
  16 +MAX_FD="maximum"
  17 +
  18 +warn ( ) {
  19 + echo "$*"
  20 +}
  21 +
  22 +die ( ) {
  23 + echo
  24 + echo "$*"
  25 + echo
  26 + exit 1
  27 +}
  28 +
  29 +# OS specific support (must be 'true' or 'false').
  30 +cygwin=false
  31 +msys=false
  32 +darwin=false
  33 +case "`uname`" in
  34 + CYGWIN* )
  35 + cygwin=true
  36 + ;;
  37 + Darwin* )
  38 + darwin=true
  39 + ;;
  40 + MINGW* )
  41 + msys=true
  42 + ;;
  43 +esac
  44 +
  45 +# Attempt to set APP_HOME
  46 +# Resolve links: $0 may be a link
  47 +PRG="$0"
  48 +# Need this for relative symlinks.
  49 +while [ -h "$PRG" ] ; do
  50 + ls=`ls -ld "$PRG"`
  51 + link=`expr "$ls" : '.*-> \(.*\)$'`
  52 + if expr "$link" : '/.*' > /dev/null; then
  53 + PRG="$link"
  54 + else
  55 + PRG=`dirname "$PRG"`"/$link"
  56 + fi
  57 +done
  58 +SAVED="`pwd`"
  59 +cd "`dirname \"$PRG\"`/" >/dev/null
  60 +APP_HOME="`pwd -P`"
  61 +cd "$SAVED" >/dev/null
  62 +
  63 +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
  64 +
  65 +# Determine the Java command to use to start the JVM.
  66 +if [ -n "$JAVA_HOME" ] ; then
  67 + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
  68 + # IBM's JDK on AIX uses strange locations for the executables
  69 + JAVACMD="$JAVA_HOME/jre/sh/java"
  70 + else
  71 + JAVACMD="$JAVA_HOME/bin/java"
  72 + fi
  73 + if [ ! -x "$JAVACMD" ] ; then
  74 + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
  75 +
  76 +Please set the JAVA_HOME variable in your environment to match the
  77 +location of your Java installation."
  78 + fi
  79 +else
  80 + JAVACMD="java"
  81 + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
  82 +
  83 +Please set the JAVA_HOME variable in your environment to match the
  84 +location of your Java installation."
  85 +fi
  86 +
  87 +# Increase the maximum file descriptors if we can.
  88 +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
  89 + MAX_FD_LIMIT=`ulimit -H -n`
  90 + if [ $? -eq 0 ] ; then
  91 + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
  92 + MAX_FD="$MAX_FD_LIMIT"
  93 + fi
  94 + ulimit -n $MAX_FD
  95 + if [ $? -ne 0 ] ; then
  96 + warn "Could not set maximum file descriptor limit: $MAX_FD"
  97 + fi
  98 + else
  99 + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
  100 + fi
  101 +fi
  102 +
  103 +# For Darwin, add options to specify how the application appears in the dock
  104 +if $darwin; then
  105 + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
  106 +fi
  107 +
  108 +# For Cygwin, switch paths to Windows format before running java
  109 +if $cygwin ; then
  110 + APP_HOME=`cygpath --path --mixed "$APP_HOME"`
  111 + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
  112 + JAVACMD=`cygpath --unix "$JAVACMD"`
  113 +
  114 + # We build the pattern for arguments to be converted via cygpath
  115 + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
  116 + SEP=""
  117 + for dir in $ROOTDIRSRAW ; do
  118 + ROOTDIRS="$ROOTDIRS$SEP$dir"
  119 + SEP="|"
  120 + done
  121 + OURCYGPATTERN="(^($ROOTDIRS))"
  122 + # Add a user-defined pattern to the cygpath arguments
  123 + if [ "$GRADLE_CYGPATTERN" != "" ] ; then
  124 + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
  125 + fi
  126 + # Now convert the arguments - kludge to limit ourselves to /bin/sh
  127 + i=0
  128 + for arg in "$@" ; do
  129 + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
  130 + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
  131 +
  132 + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
  133 + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
  134 + else
  135 + eval `echo args$i`="\"$arg\""
  136 + fi
  137 + i=$((i+1))
  138 + done
  139 + case $i in
  140 + (0) set -- ;;
  141 + (1) set -- "$args0" ;;
  142 + (2) set -- "$args0" "$args1" ;;
  143 + (3) set -- "$args0" "$args1" "$args2" ;;
  144 + (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
  145 + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
  146 + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
  147 + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
  148 + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
  149 + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
  150 + esac
  151 +fi
  152 +
  153 +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
  154 +function splitJvmOpts() {
  155 + JVM_OPTS=("$@")
  156 +}
  157 +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
  158 +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
  159 +
  160 +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
... ...
PersonalCenter/gradlew.bat
... ... @@ -0,0 +1,90 @@
  1 +@if "%DEBUG%" == "" @echo off
  2 +@rem ##########################################################################
  3 +@rem
  4 +@rem Gradle startup script for Windows
  5 +@rem
  6 +@rem ##########################################################################
  7 +
  8 +@rem Set local scope for the variables with windows NT shell
  9 +if "%OS%"=="Windows_NT" setlocal
  10 +
  11 +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
  12 +set DEFAULT_JVM_OPTS=
  13 +
  14 +set DIRNAME=%~dp0
  15 +if "%DIRNAME%" == "" set DIRNAME=.
  16 +set APP_BASE_NAME=%~n0
  17 +set APP_HOME=%DIRNAME%
  18 +
  19 +@rem Find java.exe
  20 +if defined JAVA_HOME goto findJavaFromJavaHome
  21 +
  22 +set JAVA_EXE=java.exe
  23 +%JAVA_EXE% -version >NUL 2>&1
  24 +if "%ERRORLEVEL%" == "0" goto init
  25 +
  26 +echo.
  27 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
  28 +echo.
  29 +echo Please set the JAVA_HOME variable in your environment to match the
  30 +echo location of your Java installation.
  31 +
  32 +goto fail
  33 +
  34 +:findJavaFromJavaHome
  35 +set JAVA_HOME=%JAVA_HOME:"=%
  36 +set JAVA_EXE=%JAVA_HOME%/bin/java.exe
  37 +
  38 +if exist "%JAVA_EXE%" goto init
  39 +
  40 +echo.
  41 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
  42 +echo.
  43 +echo Please set the JAVA_HOME variable in your environment to match the
  44 +echo location of your Java installation.
  45 +
  46 +goto fail
  47 +
  48 +:init
  49 +@rem Get command-line arguments, handling Windowz variants
  50 +
  51 +if not "%OS%" == "Windows_NT" goto win9xME_args
  52 +if "%@eval[2+2]" == "4" goto 4NT_args
  53 +
  54 +:win9xME_args
  55 +@rem Slurp the command line arguments.
  56 +set CMD_LINE_ARGS=
  57 +set _SKIP=2
  58 +
  59 +:win9xME_args_slurp
  60 +if "x%~1" == "x" goto execute
  61 +
  62 +set CMD_LINE_ARGS=%*
  63 +goto execute
  64 +
  65 +:4NT_args
  66 +@rem Get arguments from the 4NT Shell from JP Software
  67 +set CMD_LINE_ARGS=%$
  68 +
  69 +:execute
  70 +@rem Setup the command line
  71 +
  72 +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
  73 +
  74 +@rem Execute Gradle
  75 +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
  76 +
  77 +:end
  78 +@rem End local scope for the variables with windows NT shell
  79 +if "%ERRORLEVEL%"=="0" goto mainEnd
  80 +
  81 +:fail
  82 +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
  83 +rem the _cmd.exe /c_ return code!
  84 +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
  85 +exit /b 1
  86 +
  87 +:mainEnd
  88 +if "%OS%"=="Windows_NT" endlocal
  89 +
  90 +:omega
... ...
PersonalCenter/settings.gradle
... ... @@ -0,0 +1 @@
  1 +include ':app'
... ...