diff --git a/app/build.gradle b/app/build.gradle index 75f3c15..1b2b0c6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -24,14 +24,22 @@ android { } dependencies { - implementation 'androidx.appcompat:appcompat:1.1.0' + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' api 'com.hankcs:hanlp:portable-1.7.2' implementation 'com.google.android.material:material:1.0.0' - androidTestImplementation 'androidx.test.ext:junit:1.1.1' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' - implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: []) +// implementation 'androidx.appcompat:appcompat:1.1.0' +// implementation 'androidx.constraintlayout:constraintlayout:1.1.3' +// testImplementation 'junit:junit:4.12' +// androidTestImplementation 'androidx.test.ext:junit:1.1.0' +// androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' +// api 'com.hankcs:hanlp:portable-1.7.2' +// implementation 'com.google.android.material:material:1.0.0' +// androidTestImplementation 'androidx.test.ext:junit:1.1.1' +// androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' +// implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: []) } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 077ed49..ba950a8 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,8 +15,11 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> + + - + + diff --git a/app/src/main/java/com/example/cmknowledgegraph/LoginActivity.java b/app/src/main/java/com/example/cmknowledgegraph/LoginActivity.java index a36970f..28d4390 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/LoginActivity.java +++ b/app/src/main/java/com/example/cmknowledgegraph/LoginActivity.java @@ -10,6 +10,8 @@ import android.widget.TextView; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; +import com.example.PersonalCenter.Login; + import Schema.OperaSchema; public class LoginActivity extends AppCompatActivity { @@ -34,21 +36,31 @@ public class LoginActivity extends AppCompatActivity { String tel=tel_edit.getText().toString().trim(); String password=password_edit.getText().toString(); //调用数据库类中的方法进行登录 - boolean isLogin= OperaSchema.longin(tel,password); - /** - * 登陆成功,返回上一个界面,即个人中心界面,刷新个人中心界面 - * 即,改变登录按钮为欢迎按钮 - */ - if(isLogin) { - finish();//返回个人中心Activity - //刷新个人中心Activity - - }else{//登陆失败提醒 - AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this); - builder.setTitle("登陆提醒");// 设置标题 - builder.setMessage("登陆失败");// 为对话框设置内容 - builder.create().show();// 使用show()方法显示对话框 - } +// boolean isLogin= OperaSchema.longin(tel,password);//原来的数据库 + Login login = new Login(tel,password); + + new Thread(new Runnable() { + @Override + public void run() { + String username = login.connUser(); + /** + * 登陆成功,返回上一个界面,即个人中心界面,刷新个人中心界面 + * 即,改变登录按钮为欢迎按钮 + */ + if(username!=null) { + finish();//返回个人中心Activity + //刷新个人中心Activity + + }else{//登陆失败提醒 + AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this); + builder.setTitle("登陆提醒");// 设置标题 + builder.setMessage("登陆失败");// 为对话框设置内容 + builder.create().show();// 使用show()方法显示对话框 + } + } + }).start(); + + } }); diff --git a/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java b/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java index 046b46e..6eedf28 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java +++ b/app/src/main/java/com/example/cmknowledgegraph/MainActivity.java @@ -1,22 +1,78 @@ package com.example.cmknowledgegraph; +import android.os.Bundle; + +import com.example.cmknowledgegraph.MainContent; +import com.example.cmknowledgegraph.R; +import com.example.cmknowledgegraph.SearchContent; +import com.google.android.material.bottomnavigation.BottomNavigationView; +import com.hankcs.hanlp.HanLP; + import androidx.appcompat.app.AppCompatActivity; +import androidx.annotation.NonNull; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentTransaction; -import android.os.Bundle; -import android.util.Log; -import android.view.View; -import android.widget.Button; +import android.view.MenuItem; +import android.widget.TextView; -import com.example.PersonalCenter.Login; -import com.example.PersonalCenter.Register; +import java.util.List; public class MainActivity extends AppCompatActivity { + private TextView mTextMessage; + private FragmentTransaction transaction; + private FragmentManager fragmentManager; + + private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener + = new BottomNavigationView.OnNavigationItemSelectedListener() { - @Override - protected void onCreate(Bundle savedInstanceState) { + @Override + + + public boolean onNavigationItemSelected(MenuItem item) { + fragmentManager = getSupportFragmentManager(); //使用fragmentmanager和transaction来实现切换效果 + transaction = fragmentManager.beginTransaction(); + switch (item.getItemId()) { + case R.id.home: + transaction.replace(R.id.content,new MainContent()); //对应的java class + transaction.commit(); //一定不要忘记commit,否则不会显示 + return true; + case R.id.search: + transaction.replace(R.id.content,new SearchContent()); //对应的java class + transaction.commit(); //一定不要忘记commit,否则不会显示 + return true; + case R.id.chat: + return true; + case R.id.person: + transaction.replace(R.id.content,new PersonContent()); //对应的java class + transaction.commit(); //一定不要忘记commit,否则不会显示 + return true; + } + return false; + } + + }; +// 设置默认进来是tab 显示的页面 +private void setDefaultFragment(){ + fragmentManager = getSupportFragmentManager(); + transaction = fragmentManager.beginTransaction(); + transaction.replace(R.id.content,new MainContent()); + transaction.commit(); + } + +@Override +protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - System.out.println("haha"); + setDefaultFragment(); //上面写的那个函数 + BottomNavigationView navView = findViewById(R.id.nav_view); + mTextMessage = findViewById(R.id.message); + navView.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); + + //HanLP测试 + String content = "发烧感冒"; + List keywordList = HanLP.extractKeyword(content, 5); + System.out.println(keywordList); + } - } -} + } \ No newline at end of file diff --git a/app/src/main/java/com/example/cmknowledgegraph/MainContent.java b/app/src/main/java/com/example/cmknowledgegraph/MainContent.java index b9182bd..6d317fc 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/MainContent.java +++ b/app/src/main/java/com/example/cmknowledgegraph/MainContent.java @@ -14,6 +14,6 @@ public class MainContent extends Fragment { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment - return inflater.inflate( R.layout.activity_main, container, false ); //要加载的layout文件 + return inflater.inflate( R.layout.activity_home, container, false ); //要加载的layout文件 } } diff --git a/app/src/main/java/com/example/cmknowledgegraph/PersonContent.java b/app/src/main/java/com/example/cmknowledgegraph/PersonContent.java index cfc4df8..83ded31 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/PersonContent.java +++ b/app/src/main/java/com/example/cmknowledgegraph/PersonContent.java @@ -1,9 +1,12 @@ package com.example.cmknowledgegraph; +import android.content.Intent; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Button; +import android.widget.ImageButton; import androidx.fragment.app.Fragment; @@ -14,4 +17,18 @@ public class PersonContent extends Fragment { // Inflate the layout for this fragment return inflater.inflate( R.layout.activity_personality_center, container, false ); //要加载的layout文件 } + + public void onActivityCreated(Bundle savedInstanceState) { + // TODO Auto-generated method stub + super.onActivityCreated(savedInstanceState); + Button login_pc_btn = (Button) getActivity().findViewById(R.id.login_pc_button); + login_pc_btn.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + //跳转到LoginActivity + Intent intent=new Intent(); + intent.setClass(getActivity(),LoginActivity.class); + startActivity(intent); + } + }); + } } diff --git a/app/src/main/java/com/example/cmknowledgegraph/PersonalityCenterActivity.java b/app/src/main/java/com/example/cmknowledgegraph/PersonalityCenterActivity.java index d4c64da..20bcc2d 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/PersonalityCenterActivity.java +++ b/app/src/main/java/com/example/cmknowledgegraph/PersonalityCenterActivity.java @@ -2,14 +2,18 @@ package com.example.cmknowledgegraph; import androidx.appcompat.app.AppCompatActivity; +import android.annotation.SuppressLint; import android.content.Intent; import android.os.Bundle; +import android.util.Log; import android.view.View; import android.widget.Button; public class PersonalityCenterActivity extends AppCompatActivity { + @SuppressLint("LongLogTag") @Override protected void onCreate(Bundle savedInstanceState) { + Log.i("PersonalityCenterActivity","个人中心"); super.onCreate(savedInstanceState); setContentView(R.layout.activity_personality_center); @@ -21,7 +25,7 @@ public class PersonalityCenterActivity extends AppCompatActivity { Intent intent=new Intent(); intent.setClass(PersonalityCenterActivity.this,LoginActivity.class); startActivity(intent); - System.out.println("点击个人中心的登录按钮"); + Log.i("PersonalityCenterActivity","点击"); } }); } diff --git a/app/src/main/java/com/example/cmknowledgegraph/RegisterActivity.java b/app/src/main/java/com/example/cmknowledgegraph/RegisterActivity.java index b28defd..34caefe 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/RegisterActivity.java +++ b/app/src/main/java/com/example/cmknowledgegraph/RegisterActivity.java @@ -9,6 +9,8 @@ import android.widget.EditText; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; +import com.example.PersonalCenter.Register; + import Schema.OperaSchema; public class RegisterActivity extends AppCompatActivity { @@ -34,30 +36,38 @@ public class RegisterActivity extends AppCompatActivity { String password=password_edit.getText().toString(); String NickName=nickname_edit.getText().toString(); //调用数据库类方法进行注册 - boolean isRegister= OperaSchema.register(tel,NickName,password); - if(isRegister){ - //注册成功,对话框提醒 - AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this); - builder.setTitle("注册提醒");// 设置标题 - // builder.setIcon(R.drawable.ic_launcher);//设置图标 - builder.setMessage("注册成功");// 为对话框设置内容 - builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { +// boolean isRegister= OperaSchema.register(tel,NickName,password);//原来的数据连接 + Register register = new Register(tel,NickName,password); + new Thread(new Runnable() { + @Override + public void run() { + boolean isRegister = register.regist(); + if(isRegister){ + //注册成功,对话框提醒 + AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this); + builder.setTitle("注册提醒");// 设置标题 + // builder.setIcon(R.drawable.ic_launcher);//设置图标 + builder.setMessage("注册成功");// 为对话框设置内容 + builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface arg0, int arg1) { - // TODO Auto-generated method stub - //返回登录页面 - finish(); + @Override + public void onClick(DialogInterface arg0, int arg1) { + // TODO Auto-generated method stub + //返回登录页面 + finish(); + } + }); + builder.create().show();// 使用show()方法显示对话框 + }else{//注册失败 + //注册失败提醒 + AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this); + builder.setTitle("注册提醒");// 设置标题 + // builder.setIcon(R.drawable.ic_launcher);//设置图标 + builder.setMessage("注册失败");// 为对话框设置内容 } - }); - builder.create().show();// 使用show()方法显示对话框 - }else{//注册失败 - //注册失败提醒 - AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this); - builder.setTitle("注册提醒");// 设置标题 - // builder.setIcon(R.drawable.ic_launcher);//设置图标 - builder.setMessage("注册失败");// 为对话框设置内容 - } + } + }).start(); + } }); diff --git a/app/src/main/java/com/example/cmknowledgegraph/SearchContent.java b/app/src/main/java/com/example/cmknowledgegraph/SearchContent.java index 9b0614b..98b5f1e 100644 --- a/app/src/main/java/com/example/cmknowledgegraph/SearchContent.java +++ b/app/src/main/java/com/example/cmknowledgegraph/SearchContent.java @@ -1,9 +1,12 @@ package com.example.cmknowledgegraph; +import android.content.DialogInterface; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Button; +import android.widget.ImageButton; import androidx.fragment.app.Fragment; @@ -16,4 +19,14 @@ public class SearchContent extends Fragment { return inflater.inflate( R.layout.activity_search, container, false ); //要加载的layout文件 } + public void onActivityCreated(Bundle savedInstanceState) { + // TODO Auto-generated method stub + super.onActivityCreated(savedInstanceState); + ImageButton search_btn = (ImageButton) getActivity().findViewById(R.id.search_btn); + search_btn.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + //查找逻辑 + } + }); + } } diff --git a/app/src/main/res/drawable/home.png b/app/src/main/res/drawable/home.png new file mode 100644 index 0000000..49f3af5 Binary files /dev/null and b/app/src/main/res/drawable/home.png differ diff --git a/app/src/main/res/layout/activity_home.xml b/app/src/main/res/layout/activity_home.xml new file mode 100644 index 0000000..bebcec1 --- /dev/null +++ b/app/src/main/res/layout/activity_home.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index b459778..79a01bf 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -26,4 +26,4 @@ app:layout_constraintRight_toRightOf="parent" app:menu="@menu/bottom_nav_menu" /> - + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_search.xml b/app/src/main/res/layout/activity_search.xml index 3535b81..3287d8a 100644 --- a/app/src/main/res/layout/activity_search.xml +++ b/app/src/main/res/layout/activity_search.xml @@ -19,7 +19,8 @@ android:paddingBottom="15dp" android:text="请输入您的搜索词汇" android:textColor="#C0C0C0" - android:textSize="40px" /> + android:textSize="40px" + />