2 years ago
parent 2ed84a2f77
commit 0a60385b7d

@ -0,0 +1,9 @@
*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
.externalNativeBuild

@ -0,0 +1,116 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<compositeConfiguration>
<compositeBuild compositeDefinitionSource="SCRIPT" />
</compositeConfiguration>
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="resolveModulePerSourceSet" value="false" />
<option name="testRunner" value="PLATFORM" />
</GradleProjectSettings>
</option>
</component>
</project>

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
<module fileurl="file://$PROJECT_DIR$/diary0233.iml" filepath="$PROJECT_DIR$/diary0233.iml" />
</modules>
</component>
</project>

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
</set>
</option>
</component>
</project>

@ -0,0 +1 @@
/build

@ -0,0 +1,30 @@
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "ui.com.bighomeworkdiary"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.0.0-beta1'
implementation 'com.android.support:design:26.0.0-beta1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:support-v4:26.0.0-beta1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:0.5'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2'
}

@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile

@ -0,0 +1,26 @@
package ui.com.bighomeworkdiary;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.runner.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith( AndroidJUnit4.class )
public class ExampleInstrumentedTest {
@Test
public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("ui.com.bighomeworkdiary", appContext.getPackageName());
}
}

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ui.com.bighomeworkdiary">
<!-- To auto-complete the email text field in the login form with the user's emails -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<application
android:name=".MyApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".LoginActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".MainActivity" />
<activity android:name=".RegisterActivity" />
<activity android:name=".CreateActivity"></activity>
<activity android:name=".LookActivity"></activity>
<activity android:name=".UpdateActivity"></activity>
<activity android:name=".PswdActivity"></activity>
</application>
</manifest>

@ -0,0 +1,90 @@
package ui.com.bighomeworkdiary;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.text.SimpleDateFormat;
import java.util.Date;
public class CreateActivity extends AppCompatActivity {
private EditText title;
private EditText msg;
private Button btnok;
// title
private TextView mTvTitle;
// 返回
private ImageView mIvBack;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_create);
mIvBack = (ImageView) findViewById(R.id.mIvBack);
mTvTitle = (TextView) findViewById(R.id.mTvTitle);
mTvTitle.setText("新增信息");
mIvBack.setVisibility(View.VISIBLE);
mIvBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
title = (EditText) findViewById(R.id.title);
msg = (EditText) findViewById(R.id.msg);
btnok = (Button) findViewById(R.id.btnok);
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
insertMessage(MyApplication.getInstance().db);
}
});
}
/**
* ,
*/
private void insertMessage(SQLiteDatabase db) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");// 设置日期格式
ContentValues contentValues = new ContentValues();
contentValues.put("title",title.getText().toString());
contentValues.put("message", msg.getText().toString());
contentValues.put("time", df.format(new Date()));
long result_msg = db.insert("diaryTable", null, contentValues);
if (result_msg != -1) {
Toast.makeText(this, "添加成功", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "添加失败", Toast.LENGTH_SHORT).show();
}
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
CreateActivity.this.finish();
}
}, 1000);
}
}

@ -0,0 +1,43 @@
package ui.com.bighomeworkdiary;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteCursor;
import android.database.sqlite.SQLiteCursorDriver;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteQuery;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DBHelper extends SQLiteOpenHelper {
public static final String TAG = "SQLiteDemo";
public static final String DB_NAME = "mydb.db";
public static final int VERSION = 1;
public DBHelper(Context context,String name) {
//super(context, DB_NAME, null, VERSION);
super(context, DB_NAME, null, VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
Log.d(TAG, "Database on create");
//用户表
String sqluser = "CREATE TABLE userTable(_id INTEGER PRIMARY KEY AUTOINCREMENT, username VARCHAR(256), userpswd VARCHAR(256))";
//日记表
String sqldiary = "CREATE TABLE diaryTable(_id INTEGER PRIMARY KEY AUTOINCREMENT, title VARCHAR(256), message VARCHAR(256), time VARCHAR(256))";
db.execSQL(sqluser);
db.execSQL(sqldiary);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.d(TAG, "Database on upgrade old version " + oldVersion + ", new version " + newVersion);
}
}

@ -0,0 +1,114 @@
package ui.com.bighomeworkdiary;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
import ui.com.bighomeworkdiary.adapter.DiaryAdapter;
import ui.com.bighomeworkdiary.model.DiaryModel;
import ui.com.bighomeworkdiary.model.UserModel;
public class DiaryFragment extends Fragment {
// 获取view
private View rootView;
private Button mviTongJi;
private List<DiaryModel> listData = new ArrayList<DiaryModel>();
private ListView mListMessage;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = LayoutInflater.from(getActivity()).inflate(R.layout.fragment_message_send, null);
return rootView;
}
@Override
public void onResume() {
super.onResume();
initWidget();
initData();
}
public void initWidget() {
mListMessage = (ListView) rootView.findViewById(R.id.mListMessage);
mviTongJi = (Button) rootView.findViewById(R.id.mviTongJi);
mviTongJi.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getActivity(), CreateActivity.class);
getActivity().startActivity(intent);
}
});
mListMessage.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Intent intent = new Intent(getActivity(), LookActivity.class);
intent.putExtra("msg",listData.get(i));
getActivity().startActivity(intent);
}
});
}
public void initData() {
listData.clear();
Cursor cursor = MyApplication.getInstance().db.query("diaryTable", null, null, null, null, null, null);
if (cursor.moveToFirst()) {
DiaryModel diaryModel;
while (cursor.moveToNext()) {
String title = cursor.getString(cursor.getColumnIndex("title"));
String message = cursor.getString(cursor.getColumnIndex("message"));
String time = cursor.getString(cursor.getColumnIndex("time"));
String _id = cursor.getString(cursor.getColumnIndex("_id"));
diaryModel = new DiaryModel();
diaryModel.setTitle(title);
diaryModel.setMessage(message);
diaryModel.setTime(time);
diaryModel.setId(_id);
listData.add(diaryModel);
Log.i("pony_log", "messageModel" + diaryModel.toString());
}
DiaryAdapter diaryAdapter = new DiaryAdapter(getActivity(),listData);
mListMessage.setAdapter(diaryAdapter);
// 关闭数据库
} else {
Log.i("pony_log", "nomessage");
}
}
}

@ -0,0 +1,123 @@
package ui.com.bighomeworkdiary;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;
import android.widget.TextView;
/**
* @author WangXuan
*/
public class ListFragment extends Fragment {
// 获取view
private View rootView;
private RelativeLayout mtvUser;
private RelativeLayout mrlMyCollect;
private RelativeLayout mtvSoft;
private TextView userName;
private TextView userPhone;
private static final int REQUEST_CODE_SCAN_GALLERY = 100;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = LayoutInflater.from(getActivity()).inflate(R.layout.activity_register, null);
return rootView;
}
//
// /**
// * 获取控件
// */
// @Override
// public void initWidget() {
//
//
//
//
//// userName = (TextView) rootView.findViewById(R.id.userName);
//// userPhone = (TextView) rootView.findViewById(R.id.userPhone);
//// mtvSoft = (RelativeLayout) rootView.findViewById(R.id.mtvSoft);
//// mrlMyCollect = (RelativeLayout) rootView.findViewById(R.id.mrlMyCollect);
//// mtvUser = (RelativeLayout) rootView.findViewById(R.id.mtvUser);
//// mrlMyCollect.setOnClickListener(this);
//// mtvUser.setOnClickListener(this);
//// mtvSoft.setOnClickListener(this);
//
// }
// public void onClick(View v) {
//
//
// switch (v.getId()) {
// case R.id.mrltuichu:
//
// RongIMClient.getInstance().logout();
// RongIMClient.getInstance().disconnect();
// MemberUserUtils.setUid(getActivity(),"");
//
// Intent mrltuichu = new Intent(getActivity(), LoginActivity.class);
// getActivity().startActivity(mrltuichu);
// getActivity().finish();
// break;
//
// case R.id.musicImage:
// Intent innerIntent = new Intent(Intent.ACTION_GET_CONTENT); //"android.intent.action.GET_CONTENT"
// innerIntent.setType("image/*");
// startActivityForResult(innerIntent, REQUEST_CODE_SCAN_GALLERY);
// break;
//
// case R.id.mrlReview:
// Intent mrlReview = new Intent(getActivity(), UpdatePswdActivity.class);
// getActivity().startActivity(mrlReview);
// break;
//
//
// case R.id.LinearLayout01:
// Intent LinearLayout01 = new Intent(getActivity(), UserMessageUpdateActivity.class);
// getActivity().startActivity(LinearLayout01);
// break;
//
// case R.id.mtvUser:
// Intent mtvUser = new Intent(getActivity(), UserActivity.class);
// getActivity().startActivity(mtvUser);
// break;
//
//
// default:
// break;
// }
//
// }
//
// /**
// * 处理数据
// */
// @Override
// public void initData() {
//
//
// UserModel userModel = (UserModel) MemberUserUtils.getBean(getActivity(), "user_messgae");
// userName.setText(userModel.getUname());
// userPhone.setText(userModel.getUphone());
//
// Log.i("pony_log","图片上传成功"+Consts.URL_IMAGE + userModel.getUImg());
//
//
//// if (!TextUtils.isEmpty(userModel.getUImg())) {
//// Picasso.with(getActivity()).load(Consts.URL_IMAGE + userModel.getUImg()).placeholder(R.drawable.stuimg).into(musicImage);
//// }
//
// }
}

@ -0,0 +1,81 @@
package ui.com.bighomeworkdiary;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import ui.com.bighomeworkdiary.model.UserModel;
public class LoginActivity extends AppCompatActivity {
private EditText username;
private EditText userpswd;
private Button btnok, btnreg;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
username = (EditText) findViewById(R.id.username);
userpswd = (EditText) findViewById(R.id.userpswd);
btnok = (Button) findViewById(R.id.btnok);
btnreg = (Button) findViewById(R.id.btnreg);
username.setText("");
userpswd.setText("");
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
loginInfor(username.getText().toString(),userpswd.getText().toString());
}
});
btnreg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(LoginActivity.this, RegisterActivity.class);
LoginActivity.this.startActivity(intent);
}
});
}
private void loginInfor(String name,String pswd) {
String rawQuerySql = "select * from userTable where username = '"+name+"' and userpswd = '"+pswd+"'";
Cursor cursor = MyApplication.getInstance().db.rawQuery(rawQuerySql,null);
if (cursor.moveToFirst()) {
String username = cursor.getString(cursor.getColumnIndex("username"));
String userpswd = cursor.getString(cursor.getColumnIndex("userpswd"));
String userId = cursor.getString(cursor.getColumnIndex("_id"));
UserModel messageModel = new UserModel();
messageModel.setUsername(username);
messageModel.setUserpswd(userpswd);
messageModel.setUserId(userId);
Log.i("pony_log", "messageModel" + messageModel.toString());
MemberUserUtils.putBean(LoginActivity.this, "user_messgae", messageModel);
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
LoginActivity.this.startActivity(intent);
// 关闭数据库
} else {
Toast.makeText(this, "用户名或密码错误", Toast.LENGTH_SHORT).show();
Log.i("pony_log", "nomessage");
}
}
}

@ -0,0 +1,96 @@
package ui.com.bighomeworkdiary;
import android.content.ContentValues;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.text.SimpleDateFormat;
import java.util.Date;
import ui.com.bighomeworkdiary.model.DiaryModel;
public class LookActivity extends AppCompatActivity {
private TextView title;
private TextView msg;
private Button btnupdate,btndelete;
// title
private TextView mTvTitle;
// 返回
private ImageView mIvBack;
DiaryModel diaryModel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_look);
mIvBack = (ImageView) findViewById(R.id.mIvBack);
mTvTitle = (TextView) findViewById(R.id.mTvTitle);
mTvTitle.setText("详情信息");
mIvBack.setVisibility(View.VISIBLE);
mIvBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
title = (TextView) findViewById(R.id.title);
msg = (TextView) findViewById(R.id.msg);
btnupdate = (Button) findViewById(R.id.btnupdate);
btndelete = (Button) findViewById(R.id.btndelete);
diaryModel = (DiaryModel) this.getIntent().getSerializableExtra("msg");
title.setText(diaryModel.getTitle());
msg.setText(diaryModel.getMessage());
btndelete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//删除数据库里的model数据 因为_id具有唯一性。
MyApplication.getInstance().db.delete("diaryTable","_id=?",new String[]{""+diaryModel.getId()});
Toast.makeText( LookActivity.this, "删除成功", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
LookActivity.this.finish();
}
}, 1000);
}
});
btnupdate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent( LookActivity.this, UpdateActivity.class);
intent.putExtra("msg",diaryModel);
LookActivity.this.startActivity(intent);
}
});
}
}

@ -0,0 +1,70 @@
package ui.com.bighomeworkdiary;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.BottomNavigationView;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private List<Fragment> fragments;
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
= new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.navigation_home:
switchFragment(0);
return true;
case R.id.navigation_dashboard:
switchFragment(1);
return true;
}
return false;
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fragments = new ArrayList<Fragment>();
fragments.add(new DiaryFragment());
fragments.add(new MyFragment());
int index = 0;
switchFragment(index);
BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
}
private void switchFragment(int position) {
FragmentManager fragmentManager = getSupportFragmentManager();
// 开启一个Fragment事务
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.replace(R.id.fragment_container, fragments.get(position));
transaction.commit();
}
}

@ -0,0 +1,94 @@
package ui.com.bighomeworkdiary;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.text.TextUtils;
import android.util.Base64;
import android.util.Log;
/**
*
* @author WangXuan
*
* 2016-11-7
*/
public class MemberUserUtils {
private static final String NAME = "orangeShare";
@SuppressLint( "WrongConstant" )
public static SharedPreferences getSharedPreferences(Context context) {
return context.getSharedPreferences(NAME, Context.MODE_APPEND);
}
public static String getLoginFlag(Context context) {
try {
SharedPreferences preferences = context.getSharedPreferences("MemberManager", 0);
return preferences.getString("LoginFlag", "");
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
public static void setLoginFlag(Context context, String uid) {
SharedPreferences preferences = context.getSharedPreferences("MemberManager", 0);
preferences.edit().putString("LoginFlag", uid).commit();
}
public static void putBean(Context context, String key, Object obj) {
if (obj instanceof Serializable) {
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(obj);
String string64 = new String(Base64.encode(baos.toByteArray(), 0));
Editor editor = getSharedPreferences(context).edit();
editor.putString(key, string64);
editor.commit();
} catch (IOException e) {
e.printStackTrace();
}
} else {
throw new IllegalArgumentException("the obj must implement Serializble");
}
}
public static Object getBean(Context context, String key) {
Object obj = null;
try {
String base64 = getSharedPreferences(context).getString(key, "");
if (base64.equals("")) {
return null;
}
byte[] base64Bytes = Base64.decode(base64.getBytes(), 1);
ByteArrayInputStream bais = new ByteArrayInputStream(base64Bytes);
ObjectInputStream ois = new ObjectInputStream(bais);
obj = ois.readObject();
} catch (Exception e) {
e.printStackTrace();
}
return obj;
}
}

@ -0,0 +1,32 @@
package ui.com.bighomeworkdiary;
import android.app.Application;
import android.database.sqlite.SQLiteDatabase;
/**
*
* @author Application
*
*/
public class MyApplication extends Application {
// 当前用户的Sec账户信息实体
private static MyApplication INSTANCE = null;
public static SQLiteDatabase db;
@Override
public void onCreate() {
super.onCreate();
INSTANCE = this;
DBHelper dbHelper = new DBHelper(getApplicationContext(), DBHelper.DB_NAME);
// 在执行了getWritableDatabase的时候才会创建数据库
db = dbHelper.getWritableDatabase();
}
public static synchronized MyApplication getInstance() {
return INSTANCE;
}
}

@ -0,0 +1,98 @@
package ui.com.bighomeworkdiary;
import android.content.Context;
import android.content.CursorLoader;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.DocumentsContract;
import android.provider.MediaStore;
import android.support.annotation.RequiresApi;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;
import android.widget.TextView;
import java.io.File;
import java.io.FileNotFoundException;
import ui.com.bighomeworkdiary.model.UserModel;
import static android.app.Activity.RESULT_OK;
/**
* @author WangXuan
*/
public class MyFragment extends Fragment implements View.OnClickListener {
// 获取view
private View rootView;
private RelativeLayout mtvUser;
private RelativeLayout mrltuichu;
private RelativeLayout mrlReview;
private TextView userName;
private static final int REQUEST_CODE_SCAN_GALLERY = 100;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = LayoutInflater.from(getActivity()).inflate(R.layout.fragment_my, null);
initWidget();
initData();
return rootView;
}
public void initWidget() {
userName = (TextView) rootView.findViewById(R.id.userName);
mrltuichu = (RelativeLayout) rootView.findViewById(R.id.mrltuichu);
mrltuichu.setOnClickListener(this);
mrlReview = (RelativeLayout) rootView.findViewById(R.id.mrlReview);
mrlReview.setOnClickListener(this);
}
public void onClick(View v) {
switch (v.getId()) {
case R.id.mrltuichu:
Intent mrltuichu = new Intent(getActivity(), LoginActivity.class);
getActivity().startActivity(mrltuichu);
getActivity().finish();
break;
case R.id.mrlReview:
Intent mrlReview = new Intent(getActivity(), PswdActivity.class);
getActivity().startActivity(mrlReview);
break;
default:
break;
}
}
public void initData() {
UserModel userModel = (UserModel) MemberUserUtils.getBean(getActivity(), "user_messgae");
userName.setText(userModel.getUsername());
}
}

@ -0,0 +1,118 @@
package ui.com.bighomeworkdiary;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import ui.com.bighomeworkdiary.model.UserModel;
public class PswdActivity extends AppCompatActivity {
private EditText ed1;
private EditText ed2;
private EditText ed3;
private Button btnok;
// title
private TextView mTvTitle;
// 返回
private ImageView mIvBack;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pswd);
mIvBack = (ImageView) findViewById(R.id.mIvBack);
mTvTitle = (TextView) findViewById(R.id.mTvTitle);
mTvTitle.setText("修改密码");
mIvBack.setVisibility(View.VISIBLE);
mIvBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
ed1 = (EditText) findViewById(R.id.ed1);
ed2 = (EditText) findViewById(R.id.ed2);
ed3 = (EditText) findViewById(R.id.ed3);
btnok = (Button) findViewById(R.id.btnok);
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
setPswd();
}
});
}
private void setPswd(){
UserModel userModel = (UserModel) MemberUserUtils.getBean(this, "user_messgae");
if (TextUtils.isEmpty(ed1.getText().toString())) {
Toast.makeText(this, "请输入原密码", Toast.LENGTH_SHORT).show();
return;
}
if (!ed1.getText().toString().equals(userModel.getUserpswd())) {
Toast.makeText(this, "原密码输入错误", Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(ed2.getText().toString())) {
Toast.makeText(this, "请输入新密码", Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(ed3.getText().toString())) {
Toast.makeText(this, "请输入确认新密码", Toast.LENGTH_SHORT).show();
return;
}
if (!ed2.getText().toString().equals(ed3.getText().toString())) {
Toast.makeText(this, "新密码和确认密码不一致", Toast.LENGTH_SHORT).show();
return;
}
//修改model的数据
String updatesql = "update userTable set userpswd="+"'"+ed2.getText().toString()+"' where _id = "+userModel.getUserId();
MyApplication.getInstance().db.execSQL(updatesql);
Log.i("pony_log",updatesql);
// long result_msg = db.insert("diaryTable", null, contentValues);
Toast.makeText(this, "修改成功", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
finish();
}
}, 1000);
}
}

@ -0,0 +1,92 @@
package ui.com.bighomeworkdiary;
import android.content.ContentValues;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.text.SimpleDateFormat;
import java.util.Date;
public class RegisterActivity extends AppCompatActivity {
private EditText username;
private EditText userpswd;
private Button btnok;
// title
private TextView mTvTitle;
// 返回
private ImageView mIvBack;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
mIvBack = (ImageView) findViewById(R.id.mIvBack);
mTvTitle = (TextView) findViewById(R.id.mTvTitle);
mTvTitle.setText("注册");
mIvBack.setVisibility(View.VISIBLE);
mIvBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
username = (EditText) findViewById(R.id.username);
userpswd = (EditText) findViewById(R.id.userpswd);
btnok = (Button) findViewById(R.id.btnok);
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
insertMessage(MyApplication.getInstance().db);
}
});
}
/**
* ,
*/
private void insertMessage(SQLiteDatabase db) {
ContentValues contentValues = new ContentValues();
contentValues.put("username",username.getText().toString());
contentValues.put("userpswd", userpswd.getText().toString());
long result_msg = db.insert("userTable", null, contentValues);
if (result_msg != -1) {
Toast.makeText(this, "注册成功", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "添加失败", Toast.LENGTH_SHORT).show();
}
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
RegisterActivity.this.finish();
}
}, 1000);
}
}

@ -0,0 +1,89 @@
package ui.com.bighomeworkdiary;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.text.SimpleDateFormat;
import java.util.Date;
import ui.com.bighomeworkdiary.model.DiaryModel;
public class UpdateActivity extends AppCompatActivity {
private EditText title;
private EditText msg;
private Button btnok;
// title
private TextView mTvTitle;
// 返回
private ImageView mIvBack;
DiaryModel diaryModel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_create);
mIvBack = (ImageView) findViewById(R.id.mIvBack);
mTvTitle = (TextView) findViewById(R.id.mTvTitle);
mTvTitle.setText("修改信息");
mIvBack.setVisibility(View.VISIBLE);
mIvBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
title = (EditText) findViewById(R.id.title);
msg = (EditText) findViewById(R.id.msg);
btnok = (Button) findViewById(R.id.btnok);
btnok.setText("确认修改");
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
insertMessage(MyApplication.getInstance().db);
}
});
diaryModel = (DiaryModel) this.getIntent().getSerializableExtra("msg");
title.setText(diaryModel.getTitle());
msg.setText(diaryModel.getMessage());
}
/**
* ,
*/
private void insertMessage(SQLiteDatabase db) {
//修改model的数据
String updatesql = "update diaryTable set title="+"'"+title.getText().toString()+"', message="+"'"+msg.getText().toString()+"' where _id = "+diaryModel.getId();
MyApplication.getInstance().db.execSQL(updatesql);
Log.i("pony_log",updatesql);
// long result_msg = db.insert("diaryTable", null, contentValues);
Toast.makeText(this, "修改成功", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
UpdateActivity.this.finish();
}
}, 1000);
}
}

@ -0,0 +1,73 @@
package ui.com.bighomeworkdiary.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import java.util.List;
import ui.com.bighomeworkdiary.R;
import ui.com.bighomeworkdiary.model.DiaryModel;
/**
*
*/
public class DiaryAdapter extends BaseAdapter {
private LayoutInflater inflater;
private List<DiaryModel> list_result;
private int posIndex;
private Context mContext;
public DiaryAdapter(Context context, List<DiaryModel> list_result) {
mContext = context;
inflater = LayoutInflater.from(context);
this.list_result = list_result;
}
@Override
public int getCount() {
return list_result.size();
}
@Override
public Object getItem(int position) {
return list_result.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = inflater.inflate(R.layout.item_diary, null);
holder = new ViewHolder();
holder.message = (TextView) convertView.findViewById(R.id.message);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.message.setText("标题:" + list_result.get(position).getTitle()
+ "\n时间:" + list_result.get(position).getTime()
+ "\n内容" + list_result.get(position).getMessage()
);
return convertView;
}
private class ViewHolder {
private TextView message;
}
public void setPos(int pos) {
posIndex = pos;
}
}

@ -0,0 +1,55 @@
package ui.com.bighomeworkdiary.model;
import java.io.Serializable;
public class DiaryModel implements Serializable {
private String title;
private String message;
private String time;
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@Override
public String toString() {
return "DiaryModel{" +
"title='" + title + '\'' +
", message='" + message + '\'' +
", time='" + time + '\'' +
", id='" + id + '\'' +
'}';
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
}

@ -0,0 +1,44 @@
package ui.com.bighomeworkdiary.model;
import java.io.Serializable;
public class UserModel implements Serializable {
private String username;
private String userpswd;
private String userId;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
@Override
public String toString() {
return "UserModel{" +
"username='" + username + '\'' +
", userpswd='" + userpswd + '\'' +
", userId='" + userId + '\'' +
'}';
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpswd() {
return userpswd;
}
public void setUserpswd(String userpswd) {
this.userpswd = userpswd;
}
}

@ -0,0 +1,34 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="108dp"
android:height="108dp"
android:viewportHeight="108"
android:viewportWidth="108">
<path
android:fillType="evenOdd"
android:pathData="M32,64C32,64 38.39,52.99 44.13,50.95C51.37,48.37 70.14,49.57 70.14,49.57L108.26,87.69L108,109.01L75.97,107.97L32,64Z"
android:strokeColor="#00000000"
android:strokeWidth="1">
<aapt:attr name="android:fillColor">
<gradient
android:endX="78.5885"
android:endY="90.9159"
android:startX="48.7653"
android:startY="61.0927"
android:type="linear">
<item
android:color="#44000000"
android:offset="0.0" />
<item
android:color="#00000000"
android:offset="1.0" />
</gradient>
</aapt:attr>
</path>
<path
android:fillColor="#FFFFFF"
android:fillType="nonZero"
android:pathData="M66.94,46.02L66.94,46.02C72.44,50.07 76,56.61 76,64L32,64C32,56.61 35.56,50.11 40.98,46.06L36.18,41.19C35.45,40.45 35.45,39.3 36.18,38.56C36.91,37.81 38.05,37.81 38.78,38.56L44.25,44.05C47.18,42.57 50.48,41.71 54,41.71C57.48,41.71 60.78,42.57 63.68,44.05L69.11,38.56C69.84,37.81 70.98,37.81 71.71,38.56C72.44,39.3 72.44,40.45 71.71,41.19L66.94,46.02ZM62.94,56.92C64.08,56.92 65,56.01 65,54.88C65,53.76 64.08,52.85 62.94,52.85C61.8,52.85 60.88,53.76 60.88,54.88C60.88,56.01 61.8,56.92 62.94,56.92ZM45.06,56.92C46.2,56.92 47.13,56.01 47.13,54.88C47.13,53.76 46.2,52.85 45.06,52.85C43.92,52.85 43,53.76 43,54.88C43,56.01 43.92,56.92 45.06,56.92Z"
android:strokeColor="#00000000"
android:strokeWidth="1" />
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M3,13h8L11,3L3,3v10zM3,21h8v-6L3,15v6zM13,21h8L21,11h-8v10zM13,3v6h8L21,3h-8z" />
</vector>

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z" />
</vector>

@ -0,0 +1,170 @@
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportHeight="108"
android:viewportWidth="108">
<path
android:fillColor="#26A69A"
android:pathData="M0,0h108v108h-108z" />
<path
android:fillColor="#00000000"
android:pathData="M9,0L9,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,0L19,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M29,0L29,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M39,0L39,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M49,0L49,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M59,0L59,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M69,0L69,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M79,0L79,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M89,0L89,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M99,0L99,108"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,9L108,9"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,19L108,19"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,29L108,29"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,39L108,39"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,49L108,49"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,59L108,59"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,69L108,69"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,79L108,79"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,89L108,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M0,99L108,99"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,29L89,29"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,39L89,39"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,49L89,49"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,59L89,59"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,69L89,69"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M19,79L89,79"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M29,19L29,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M39,19L39,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M49,19L49,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M59,19L59,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M69,19L69,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
<path
android:fillColor="#00000000"
android:pathData="M79,19L79,89"
android:strokeColor="#33FFFFFF"
android:strokeWidth="0.8" />
</vector>

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M12,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.89,2 2,2zM18,16v-5c0,-3.07 -1.64,-5.64 -4.5,-6.32L13.5,4c0,-0.83 -0.67,-1.5 -1.5,-1.5s-1.5,0.67 -1.5,1.5v0.68C7.63,5.36 6,7.92 6,11v5l-2,2v1h16v-1l-2,-2z" />
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="0dp" >
</corners>
<solid android:color="#ffffff" />
</shape>

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="0dp" >
</corners>
<solid android:color="#e5f0e4" />
</shape>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:drawable="@drawable/more_ok" />
<item android:state_focused="true" android:drawable="@drawable/more_ok" />
<item android:state_pressed="true" android:drawable="@drawable/more_ok" />
<item android:drawable="@drawable/more_no" />
</selector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorAccent">
<TextView
android:id="@+id/mTvTitle"
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center_vertical|center_horizontal"
android:text="新增日记"
android:textColor="#fff"
android:textSize="16sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/mIvBack"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:padding="10dp"
android:src="@drawable/action_bar_back" />
<ImageView
android:id="@+id/mIvStu"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:layout_marginRight="5dp"
android:padding="2dp"
android:visibility="gone" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="30dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="日记标题:" />
<EditText
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入日记标题" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="日记内容:" />
<EditText
android:id="@+id/msg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入日记内容" />
</LinearLayout>
<Button
android:id="@+id/btnok"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="10dp"
android:text="确认提交" />
</LinearLayout>
</LinearLayout>
</android.support.constraint.ConstraintLayout>

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_marginTop="30dp"
android:layout_height="50dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户昵称:"/>
<EditText
android:id="@+id/username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的用户昵称"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="登录密码:"/>
<EditText
android:id="@+id/userpswd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入您的登录密码"/>
</LinearLayout>
<Button
android:id="@+id/btnok"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="确认登录"/>
<Button
android:id="@+id/btnreg"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="注册"/>
</LinearLayout>
</android.support.constraint.ConstraintLayout>

@ -0,0 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorAccent">
<TextView
android:id="@+id/mTvTitle"
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center_vertical|center_horizontal"
android:text="新增日记"
android:textColor="#fff"
android:textStyle="bold"
android:textSize="16sp" />
<ImageView
android:id="@+id/mIvBack"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:padding="10dp"
android:src="@drawable/action_bar_back" />
<ImageView
android:id="@+id/mIvStu"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:layout_marginRight="5dp"
android:padding="2dp"
android:visibility="gone" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_marginTop="30dp"
android:layout_height="50dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="日记标题:"/>
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的日记标题"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_marginTop="10dp"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="日记内容:"/>
<TextView
android:id="@+id/msg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的日记内容"/>
</LinearLayout>
<Button
android:id="@+id/btnupdate"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="50dp"
android:text="修改"/>
<Button
android:id="@+id/btndelete"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="10dp"
android:text="删除"/>
</LinearLayout>
</LinearLayout>
</android.support.constraint.ConstraintLayout>

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/bg_color_login"
android:orientation="vertical">
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/navigation"
/>
<android.support.design.widget.BottomNavigationView
android:id="@+id/navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginEnd="0dp"
android:layout_alignParentBottom="true"
android:layout_marginStart="0dp"
android:background="?android:attr/windowBackground"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:menu="@menu/navigation" />
</RelativeLayout>

@ -0,0 +1,118 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorAccent">
<TextView
android:id="@+id/mTvTitle"
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center_vertical|center_horizontal"
android:text="修改密码"
android:textColor="#fff"
android:textStyle="bold"
android:textSize="16sp" />
<ImageView
android:id="@+id/mIvBack"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:padding="10dp"
android:src="@drawable/action_bar_back" />
<ImageView
android:id="@+id/mIvStu"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:layout_marginRight="5dp"
android:padding="2dp"
android:visibility="gone" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="30dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="原始密码:" />
<EditText
android:id="@+id/ed1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入您的原始密码" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="新的密码:" />
<EditText
android:id="@+id/ed2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入您的新密码" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确认密码:" />
<EditText
android:id="@+id/ed3"
android:layout_width="match_parent"
android:inputType="textPassword"
android:layout_height="wrap_content"
android:hint="请再输入一遍您的新密码" />
</LinearLayout>
<Button
android:id="@+id/btnok"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:text="确认" />
</LinearLayout>
</LinearLayout>
</android.support.constraint.ConstraintLayout>

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorAccent">
<TextView
android:id="@+id/mTvTitle"
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center_vertical|center_horizontal"
android:text="登录"
android:textColor="#fff"
android:textStyle="bold"
android:textSize="16sp" />
<ImageView
android:id="@+id/mIvBack"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:padding="10dp"
android:src="@drawable/action_bar_back" />
<ImageView
android:id="@+id/mIvStu"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:layout_marginLeft="2dp"
android:layout_marginRight="5dp"
android:padding="2dp"
android:visibility="gone" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="30dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户昵称:" />
<EditText
android:id="@+id/username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的用户昵称" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="登录密码:" />
<EditText
android:id="@+id/userpswd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的登录密码" />
</LinearLayout>
<Button
android:id="@+id/btnok"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="确认注册" />
</LinearLayout>
</LinearLayout>
</android.support.constraint.ConstraintLayout>

@ -0,0 +1,13 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.BlankFragment">
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/hello_blank_fragment" />
</FrameLayout>

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="ui.com.bighomeworkdiary.LoginActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:orientation="vertical">
<Button
android:id="@+id/btnok"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="确认登录"/>
<Button
android:id="@+id/btnreg"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="注册"/>
</LinearLayout>
</android.support.constraint.ConstraintLayout>

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/bg_color_login"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="fill_parent"
>
<ListView
android:id="@+id/mListMessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ffffff"
android:divider="@color/bg_color_login"
android:dividerHeight="1dp"
android:scrollbars="none" >
</ListView>
<LinearLayout
android:id="@+id/mllNomessage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center_horizontal"
android:orientation="vertical"
android:visibility="gone" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="暂无信息"
android:textColor="#bfbfbf" />
</LinearLayout>
</RelativeLayout>
<Button
android:id="@+id/mviTongJi"
android:layout_width="70dp"
android:layout_height="70dp"
android:text="发布"
android:layout_marginBottom="30dp"
android:textColor="#fff"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:textStyle="bold"
android:layout_marginRight="20dp"
android:background="@drawable/xj"/>
</RelativeLayout>

@ -0,0 +1,146 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/bg_color_login"
android:orientation="vertical"
>
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical|center_horizontal"
android:background="@color/colorAccent"
android:orientation="vertical"
android:padding="25dp"
>
<ImageView
android:id="@+id/musicImage"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:clickable="false"
android:focusable="false"
android:src="@drawable/tx" />
<TextView
android:id="@+id/userName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="昵称"
android:textColor="#fff"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ffffff"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<View
android:layout_width="match_parent"
android:layout_height="1sp"
android:background="@color/bg_color_login" />
<RelativeLayout
android:id="@+id/mrlReview"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@drawable/select_choice"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="修改密码"
android:textColor="#333333"
android:textSize="16dp" />
<ImageView
android:layout_width="10dp"
android:layout_height="20dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10dp"
android:src="@drawable/yoga_guide_corner" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/mrltuichu"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@drawable/select_choice"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="退出登录"
android:textColor="#333333"
android:textSize="16dp" />
<ImageView
android:layout_width="10dp"
android:layout_height="20dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="10dp"
android:src="@drawable/yoga_guide_corner" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/userInfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:id="@+id/message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="15dp"
android:text="title"
android:textColor="#333333"
android:lineSpacingExtra="5dp"
android:textSize="14sp" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/navigation_home"
android:icon="@drawable/ic_home_black_24dp"
android:title="@string/title_home" />
<item
android:id="@+id/navigation_dashboard"
android:icon="@drawable/ic_dashboard_black_24dp"
android:title="@string/title_dashboard" />
<!--<item-->
<!--android:id="@+id/navigation_notifications"-->
<!--android:icon="@drawable/ic_notifications_black_24dp"-->
<!--android:title="@string/title_notifications" />-->
</menu>

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#FF4081</color>
<color name="colorPrimaryDark">#FF4081</color>
<color name="colorAccent">#FF4081</color>
<color name="bg_color_login">#F5F5F5</color>
</resources>

@ -0,0 +1,5 @@
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>

@ -0,0 +1,23 @@
<resources>
<string name="app_name">日记本0233</string>
<string name="title_home">我的日记</string>
<string name="title_dashboard">个人中心</string>
<string name="title_notifications">Notifications</string>
<string name="title_activity_login">Sign in</string>
<!-- Strings related to login -->
<string name="prompt_email">Email</string>
<string name="prompt_password">Password (optional)</string>
<string name="action_sign_in">Sign in or register</string>
<string name="action_sign_in_short">Sign in</string>
<string name="error_invalid_email">This email address is invalid</string>
<string name="error_invalid_password">This password is too short</string>
<string name="error_incorrect_password">This password is incorrect</string>
<string name="error_field_required">This field is required</string>
<string name="permission_rationale">"Contacts permissions are needed for providing email
completions."
</string>
<!-- TODO: Remove or change this placeholder text -->
<string name="hello_blank_fragment">Hello blank fragment</string>
</resources>

@ -0,0 +1,11 @@
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
</resources>

@ -0,0 +1,17 @@
package ui.com.bighomeworkdiary;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Example local unit test, which will execute on the development machine (host).
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
public class ExampleUnitTest {
@Test
public void addition_isCorrect() throws Exception {
assertEquals(4, 2 + 2);
}
}

@ -0,0 +1,27 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}

@ -0,0 +1,17 @@
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx1536m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true

Binary file not shown.

@ -0,0 +1,6 @@
#Sun May 21 17:18:03 CST 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

160
diary0233/gradlew vendored

@ -0,0 +1,160 @@
#!/usr/bin/env bash
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
echo "$*"
}
die ( ) {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
esac
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"

@ -0,0 +1,90 @@
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windowz variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega

@ -0,0 +1 @@
include ':app'
Loading…
Cancel
Save