Compare commits
14 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
350522b6ec | 2 years ago |
|
|
8789126568 | 2 years ago |
|
|
b972d37bab | 2 years ago |
|
|
5fe65b22b9 | 2 years ago |
|
|
9117b38f8c | 2 years ago |
|
|
d877c80a2f | 2 years ago |
|
|
2a1f6a6407 | 2 years ago |
|
|
1904419606 | 2 years ago |
|
|
1961089b69 | 2 years ago |
|
|
123bc99c76 | 2 years ago |
|
|
c97bbd849b | 2 years ago |
|
|
e92531ec83 | 2 years ago |
|
|
4c6cb4f317 | 2 years ago |
|
|
82a2ef7b5e | 2 years ago |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="CompilerConfiguration">
|
||||||
|
<bytecodeTargetLevel target="17" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="deploymentTargetDropDown">
|
||||||
|
<value>
|
||||||
|
<entry key="speechDemo">
|
||||||
|
<State />
|
||||||
|
</entry>
|
||||||
|
</value>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="GradleMigrationSettings" migrationVersion="1" />
|
||||||
|
<component name="GradleSettings">
|
||||||
|
<option name="linkedExternalProjectsSettings">
|
||||||
|
<GradleProjectSettings>
|
||||||
|
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||||
|
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
|
||||||
|
<option name="modules">
|
||||||
|
<set>
|
||||||
|
<option value="$PROJECT_DIR$" />
|
||||||
|
<option value="$PROJECT_DIR$/speechDemo" />
|
||||||
|
</set>
|
||||||
|
</option>
|
||||||
|
<option name="resolveExternalAnnotations" value="false" />
|
||||||
|
</GradleProjectSettings>
|
||||||
|
</option>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectMigrations">
|
||||||
|
<option name="MigrateToGradleLocalJavaHome">
|
||||||
|
<set>
|
||||||
|
<option value="$PROJECT_DIR$" />
|
||||||
|
</set>
|
||||||
|
</option>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
<project version="4">
|
||||||
|
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" 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,181 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="AndroidLayouts">
|
||||||
|
<shared>
|
||||||
|
<config />
|
||||||
|
</shared>
|
||||||
|
<layouts>
|
||||||
|
<layout url="file://$PROJECT_DIR$/src/main/res/layout/activity_face_identify.xml">
|
||||||
|
<config>
|
||||||
|
<theme>@style/Theme.Iflytek</theme>
|
||||||
|
</config>
|
||||||
|
</layout>
|
||||||
|
<layout url="file://$PROJECT_DIR$/src/main/res/layout/iatdemo.xml">
|
||||||
|
<config>
|
||||||
|
<theme>@style/Theme.Iflytek</theme>
|
||||||
|
</config>
|
||||||
|
</layout>
|
||||||
|
<layout url="file://$PROJECT_DIR$/src/main/res/layout/main.xml">
|
||||||
|
<config>
|
||||||
|
<theme>@style/Theme.Iflytek</theme>
|
||||||
|
</config>
|
||||||
|
</layout>
|
||||||
|
<layout url="file://$PROJECT_DIR$/src/main/res/xml/iat_setting.xml">
|
||||||
|
<config>
|
||||||
|
<theme>@style/Theme.Iflytek</theme>
|
||||||
|
</config>
|
||||||
|
</layout>
|
||||||
|
</layouts>
|
||||||
|
</component>
|
||||||
|
<component name="AutoImportSettings">
|
||||||
|
<option name="autoReloadType" value="NONE" />
|
||||||
|
</component>
|
||||||
|
<component name="ChangeListManager">
|
||||||
|
<list default="true" id="d581787a-e5d1-4af8-a64b-977f86e22095" name="Changes" comment="" />
|
||||||
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||||
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||||
|
</component>
|
||||||
|
<component name="ClangdSettings">
|
||||||
|
<option name="formatViaClangd" value="false" />
|
||||||
|
</component>
|
||||||
|
<component name="CodeInsightWorkspaceSettings">
|
||||||
|
<option name="optimizeImportsOnTheFly" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="ExecutionTargetManager" SELECTED_TARGET="device_and_snapshot_combo_box_target[CRX0222222002095]" />
|
||||||
|
<component name="ExternalProjectsData">
|
||||||
|
<projectState path="$PROJECT_DIR$">
|
||||||
|
<ProjectState />
|
||||||
|
</projectState>
|
||||||
|
</component>
|
||||||
|
<component name="ExternalProjectsManager">
|
||||||
|
<system id="GRADLE">
|
||||||
|
<state>
|
||||||
|
<projects_view>
|
||||||
|
<tree_state>
|
||||||
|
<expand>
|
||||||
|
<path>
|
||||||
|
<item name="" type="6a2764b6:ExternalProjectsStructure$RootNode" />
|
||||||
|
<item name="speechDemo" type="f1a62948:ProjectNode" />
|
||||||
|
</path>
|
||||||
|
</expand>
|
||||||
|
<select />
|
||||||
|
</tree_state>
|
||||||
|
</projects_view>
|
||||||
|
</state>
|
||||||
|
</system>
|
||||||
|
</component>
|
||||||
|
<component name="ProjectId" id="2Wso22UUQ2vosUCV0MWwXOpa0j5" />
|
||||||
|
<component name="ProjectViewState">
|
||||||
|
<option name="hideEmptyMiddlePackages" value="true" />
|
||||||
|
<option name="showLibraryContents" value="true" />
|
||||||
|
<option name="showVisibilityIcons" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PropertiesComponent"><![CDATA[{
|
||||||
|
"keyToString": {
|
||||||
|
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||||
|
"RunOnceActivity.cidr.known.project.marker": "true",
|
||||||
|
"cf.first.check.clang-format": "false",
|
||||||
|
"cidr.known.project.marker": "true",
|
||||||
|
"com.google.services.firebase.aqiPopupShown": "true",
|
||||||
|
"dart.analysis.tool.window.visible": "false",
|
||||||
|
"last_opened_file_path": "D:/andior/Android_iat1145_87ccc405/sample/speechDemo",
|
||||||
|
"project.structure.last.edited": "Project",
|
||||||
|
"project.structure.proportion": "0.17",
|
||||||
|
"project.structure.side.proportion": "0.0",
|
||||||
|
"show.migrate.to.gradle.popup": "false"
|
||||||
|
}
|
||||||
|
}]]></component>
|
||||||
|
<component name="RunManager">
|
||||||
|
<configuration name="speechDemo" type="AndroidRunConfigurationType" factoryName="Android App">
|
||||||
|
<module name="speechDemo.main" />
|
||||||
|
<option name="DEPLOY" value="true" />
|
||||||
|
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
|
||||||
|
<option name="DEPLOY_AS_INSTANT" value="false" />
|
||||||
|
<option name="ARTIFACT_NAME" value="" />
|
||||||
|
<option name="PM_INSTALL_OPTIONS" value="" />
|
||||||
|
<option name="ALL_USERS" value="false" />
|
||||||
|
<option name="ALWAYS_INSTALL_WITH_PM" value="false" />
|
||||||
|
<option name="CLEAR_APP_STORAGE" value="false" />
|
||||||
|
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
|
||||||
|
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
||||||
|
<option name="MODE" value="default_activity" />
|
||||||
|
<option name="CLEAR_LOGCAT" value="false" />
|
||||||
|
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
|
||||||
|
<option name="INSPECTION_WITHOUT_ACTIVITY_RESTART" value="false" />
|
||||||
|
<option name="TARGET_SELECTION_MODE" value="DEVICE_AND_SNAPSHOT_COMBO_BOX" />
|
||||||
|
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
||||||
|
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
||||||
|
<option name="DEBUGGER_TYPE" value="Auto" />
|
||||||
|
<Auto>
|
||||||
|
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||||
|
<option name="SHOW_STATIC_VARS" value="true" />
|
||||||
|
<option name="WORKING_DIR" value="" />
|
||||||
|
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||||
|
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
|
</Auto>
|
||||||
|
<Hybrid>
|
||||||
|
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||||
|
<option name="SHOW_STATIC_VARS" value="true" />
|
||||||
|
<option name="WORKING_DIR" value="" />
|
||||||
|
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||||
|
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
|
</Hybrid>
|
||||||
|
<Java>
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
|
</Java>
|
||||||
|
<Native>
|
||||||
|
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||||
|
<option name="SHOW_STATIC_VARS" value="true" />
|
||||||
|
<option name="WORKING_DIR" value="" />
|
||||||
|
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||||
|
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||||
|
<option name="ATTACH_ON_WAIT_FOR_DEBUGGER" value="false" />
|
||||||
|
<option name="DEBUG_SANDBOX_SDK" value="false" />
|
||||||
|
</Native>
|
||||||
|
<Profilers>
|
||||||
|
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
||||||
|
<option name="STARTUP_PROFILING_ENABLED" value="false" />
|
||||||
|
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
||||||
|
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Java/Kotlin Method Sample (legacy)" />
|
||||||
|
<option name="STARTUP_NATIVE_MEMORY_PROFILING_ENABLED" value="false" />
|
||||||
|
<option name="NATIVE_MEMORY_SAMPLE_RATE_BYTES" value="2048" />
|
||||||
|
</Profilers>
|
||||||
|
<option name="DEEP_LINK" value="" />
|
||||||
|
<option name="ACTIVITY_CLASS" value="" />
|
||||||
|
<option name="SEARCH_ACTIVITY_IN_GLOBAL_SCOPE" value="false" />
|
||||||
|
<option name="SKIP_ACTIVITY_VALIDATION" value="false" />
|
||||||
|
<method v="2">
|
||||||
|
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
</component>
|
||||||
|
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||||
|
<component name="TaskManager">
|
||||||
|
<task active="true" id="Default" summary="Default task">
|
||||||
|
<changelist id="d581787a-e5d1-4af8-a64b-977f86e22095" name="Changes" comment="" />
|
||||||
|
<created>1697530437486</created>
|
||||||
|
<option name="number" value="Default" />
|
||||||
|
<option name="presentableId" value="Default" />
|
||||||
|
<updated>1697530437486</updated>
|
||||||
|
</task>
|
||||||
|
<servers />
|
||||||
|
</component>
|
||||||
|
<component name="XDebuggerManager">
|
||||||
|
<breakpoint-manager>
|
||||||
|
<breakpoints>
|
||||||
|
<line-breakpoint enabled="true" type="java-line">
|
||||||
|
<url>file://$PROJECT_DIR$/src/main/java/com/iflytek/voicedemo/IatDemo.java</url>
|
||||||
|
<line>82</line>
|
||||||
|
<option name="timeStamp" value="5" />
|
||||||
|
</line-breakpoint>
|
||||||
|
</breakpoints>
|
||||||
|
</breakpoint-manager>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,12 @@
|
|||||||
|
#BNF+IAT 1.0 UTF-8;
|
||||||
|
!grammar call;
|
||||||
|
!slot <contact>;
|
||||||
|
!slot <callPre>;
|
||||||
|
!slot <callPhone>;
|
||||||
|
!slot <callTo>;
|
||||||
|
!start <callStart>;
|
||||||
|
<callStart>:[<callPre>][<callTo>]<contact><callPhone>|[<callPre>]<callPhone>[<callTo>]<contact>;
|
||||||
|
<contact>:张海洋;
|
||||||
|
<callPre>:我要|我想|我想要;
|
||||||
|
<callPhone>:打电话;
|
||||||
|
<callTo>:给;
|
||||||
@ -0,0 +1,8 @@
|
|||||||
|
#ABNF 1.0 UTF-8;
|
||||||
|
language zh-CN;
|
||||||
|
mode voice;
|
||||||
|
|
||||||
|
root $main;
|
||||||
|
$main = $place1 到 $place2;
|
||||||
|
$place1 = 北京|武汉|南京|天津|东京;
|
||||||
|
$place2 = 上海|合肥;
|
||||||
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
Binary file not shown.
Binary file not shown.
@ -0,0 +1 @@
|
|||||||
|
{"userword":[{"name":"我的常用词","words":["佳晨实业","蜀南庭苑","高兰路","复联二"]},{"name":"我的好友","words":["李馨琪","鹿晓雷","张集栋","周家莉","叶震珂","熊泽萌"]}]}
|
||||||
@ -0,0 +1,124 @@
|
|||||||
|
package net.micode.notes.Login;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.app.AlertDialog;
|
||||||
|
import android.app.ProgressDialog;
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.content.SharedPreferences;
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.preference.PreferenceManager;
|
||||||
|
import android.util.Log;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.Button;
|
||||||
|
import android.widget.EditText;
|
||||||
|
import android.widget.Toast;
|
||||||
|
import android.widget.VideoView;
|
||||||
|
|
||||||
|
import androidx.activity.result.contract.ActivityResultContracts;
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
import net.micode.notes.R;
|
||||||
|
import net.micode.notes.ui.NotesListActivity;
|
||||||
|
import net.micode.notes.video.videoactivity;
|
||||||
|
|
||||||
|
public class LoginActivity extends Activity {
|
||||||
|
private EditText account;
|
||||||
|
private EditText passwordEdit;
|
||||||
|
|
||||||
|
public static String Account;
|
||||||
|
public static String Password;
|
||||||
|
|
||||||
|
private static SharedPreferences sp;
|
||||||
|
|
||||||
|
private Button login;
|
||||||
|
|
||||||
|
private int secret_mode;
|
||||||
|
|
||||||
|
int cnt=0;
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
setContentView(R.layout.password);
|
||||||
|
|
||||||
|
sp = PreferenceManager.getDefaultSharedPreferences(LoginActivity.this);
|
||||||
|
|
||||||
|
AgainInto();
|
||||||
|
// NotesListActivity.init_secret_mode();
|
||||||
|
if(secret_mode==1)
|
||||||
|
init();
|
||||||
|
else{
|
||||||
|
Intent intent=new Intent(LoginActivity.this, NotesListActivity.class);
|
||||||
|
startActivity(intent);
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AgainInto() {
|
||||||
|
//如果获取为空就返回默认值
|
||||||
|
Account=sp.getString("name","");
|
||||||
|
Password=sp.getString("password","");
|
||||||
|
secret_mode=sp.getInt("secret",0);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void change_val(String name,String password)
|
||||||
|
{
|
||||||
|
Log.e("leo",name);
|
||||||
|
sp.edit().putString("name",name).apply();
|
||||||
|
sp.edit().putString("password",password).apply();
|
||||||
|
Account=sp.getString("name","");
|
||||||
|
Password=sp.getString("password","");
|
||||||
|
}
|
||||||
|
public static void change_secret()
|
||||||
|
{
|
||||||
|
int v=sp.getInt("secret",0);
|
||||||
|
sp.edit().putInt("secret",1-v).apply();
|
||||||
|
}
|
||||||
|
private void init()
|
||||||
|
{
|
||||||
|
account=(EditText) findViewById(R.id.account);
|
||||||
|
passwordEdit=(EditText) findViewById(R.id.password);
|
||||||
|
login=(Button) findViewById(R.id.login);
|
||||||
|
|
||||||
|
login.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
String account_=account.getText().toString();
|
||||||
|
String password_=passwordEdit.getText().toString();
|
||||||
|
Log.e("leo",Account);
|
||||||
|
Log.e("leo",Password);
|
||||||
|
if(Account==null||Password==null){
|
||||||
|
Log.e("leo","WCNM");
|
||||||
|
}
|
||||||
|
if(account_.equals(Account)&&password_.equals(Password)){
|
||||||
|
ProgressDialog progressDialog=new ProgressDialog(LoginActivity.this);
|
||||||
|
progressDialog.setTitle("登录中");
|
||||||
|
progressDialog.setMessage("Loading...");
|
||||||
|
progressDialog.setCancelable(true);
|
||||||
|
progressDialog.show();
|
||||||
|
|
||||||
|
Intent intent=new Intent(LoginActivity.this, NotesListActivity.class);
|
||||||
|
startActivity(intent);
|
||||||
|
finish();
|
||||||
|
}else{
|
||||||
|
cnt++;
|
||||||
|
String print="第"+Integer.toString(cnt)+"密码错误";
|
||||||
|
Toast.makeText(LoginActivity.this,print,Toast.LENGTH_SHORT).show();
|
||||||
|
if(cnt==5) {
|
||||||
|
Intent intent = new Intent(LoginActivity.this, videoactivity.class);
|
||||||
|
startActivity(intent);
|
||||||
|
cnt=0;
|
||||||
|
}
|
||||||
|
// finish();
|
||||||
|
// AlertDialog.Builder builder=new AlertDialog.Builder(LoginActivity.this);
|
||||||
|
// builder.setIcon(R.drawable.baseline_error_24)
|
||||||
|
// .setTitle("密码错误")
|
||||||
|
// .setMessage("请重新输入")
|
||||||
|
// .create()
|
||||||
|
// .show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,68 @@
|
|||||||
|
package net.micode.notes.Login;
|
||||||
|
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.os.PersistableBundle;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.Button;
|
||||||
|
import android.widget.EditText;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
import net.micode.notes.R;
|
||||||
|
import net.micode.notes.USER.MyDatabaseHelper;
|
||||||
|
import net.micode.notes.ui.NotesListActivity;
|
||||||
|
|
||||||
|
public class Register extends Activity {
|
||||||
|
private EditText register_username;
|
||||||
|
|
||||||
|
private EditText register_password;
|
||||||
|
|
||||||
|
private Button register2_button;
|
||||||
|
|
||||||
|
private MyDatabaseHelper databaseHelper;
|
||||||
|
|
||||||
|
public static int re_register=0;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
setContentView(R.layout.register);
|
||||||
|
|
||||||
|
databaseHelper=new MyDatabaseHelper(this,"temp",null,1);
|
||||||
|
databaseHelper.getWritableDatabase();
|
||||||
|
|
||||||
|
register_username=(EditText) findViewById(R.id.register_username);
|
||||||
|
register_password=(EditText) findViewById(R.id.register_password);
|
||||||
|
register2_button=(Button) findViewById(R.id.register2_button);
|
||||||
|
|
||||||
|
register2_button.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
if(register_username.length()==0){
|
||||||
|
Toast.makeText(Register.this, "请输入用户名", Toast.LENGTH_SHORT).show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(register_password.length()==0){
|
||||||
|
Toast.makeText(Register.this,"请输入密码",Toast.LENGTH_SHORT).show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
LoginActivity.change_val(register_username.getText().toString(),register_password.getText().toString());
|
||||||
|
|
||||||
|
if(re_register==0) {
|
||||||
|
NotesListActivity.change_secret_mode();
|
||||||
|
Toast.makeText(Register.this, "进入隐私模式", Toast.LENGTH_SHORT).show();
|
||||||
|
finish();
|
||||||
|
}else{
|
||||||
|
re_register=0;
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
package net.micode.notes.USER;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.database.sqlite.SQLiteDatabase;
|
||||||
|
import android.database.sqlite.SQLiteOpenHelper;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
public class MyDatabaseHelper extends SQLiteOpenHelper {
|
||||||
|
|
||||||
|
public static String SQL_NAME="MyDatabaseHelper" ;
|
||||||
|
|
||||||
|
private static final String CREATE_USER=
|
||||||
|
"CREATE TABLE "+SQL_NAME+"("+
|
||||||
|
User.NAME+" TEXT PRIMARY KEY,"+
|
||||||
|
User.PASSWORD+" TEXT"+
|
||||||
|
")";
|
||||||
|
|
||||||
|
private Context mcontext;
|
||||||
|
public MyDatabaseHelper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
|
||||||
|
super(context, name, factory, version);
|
||||||
|
mcontext=context;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(SQLiteDatabase db) {
|
||||||
|
db.execSQL(CREATE_USER);
|
||||||
|
Toast.makeText(mcontext, "数据库创建成功", Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
package net.micode.notes.USER;
|
||||||
|
|
||||||
|
public class User {
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
private String password;
|
||||||
|
|
||||||
|
public static String NAME="name_";
|
||||||
|
|
||||||
|
public static String PASSWORD="password_";
|
||||||
|
|
||||||
|
public User(String name,String password){
|
||||||
|
super();
|
||||||
|
this.name=name;
|
||||||
|
this.password=password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,168 @@
|
|||||||
|
package net.micode.notes.speech.util;
|
||||||
|
|
||||||
|
import org.json.JSONArray;
|
||||||
|
import org.json.JSONObject;
|
||||||
|
import org.json.JSONTokener;
|
||||||
|
public class JsonParser {
|
||||||
|
public static String parseIatResult(String json) {
|
||||||
|
StringBuffer ret = new StringBuffer();
|
||||||
|
try {
|
||||||
|
JSONTokener tokener = new JSONTokener(json);
|
||||||
|
JSONObject joResult = new JSONObject(tokener);
|
||||||
|
|
||||||
|
JSONArray words = joResult.getJSONArray("ws");
|
||||||
|
for (int i = 0; i < words.length(); i++) {
|
||||||
|
// 转写结果词,默认使用第一个结果
|
||||||
|
JSONArray items = words.getJSONObject(i).getJSONArray("cw");
|
||||||
|
JSONObject obj = items.getJSONObject(0);
|
||||||
|
ret.append(obj.getString("w"));
|
||||||
|
// 如果需要多候选结果,解析数组其他字段
|
||||||
|
// for(int j = 0; j < items.length(); j++)
|
||||||
|
// {
|
||||||
|
// JSONObject obj = items.getJSONObject(j);
|
||||||
|
// ret.append(obj.getString("w"));
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String parseGrammarResult(String json, String engType) {
|
||||||
|
StringBuffer ret = new StringBuffer();
|
||||||
|
try {
|
||||||
|
JSONTokener tokener = new JSONTokener(json);
|
||||||
|
JSONObject joResult = new JSONObject(tokener);
|
||||||
|
|
||||||
|
JSONArray words = joResult.getJSONArray("ws");
|
||||||
|
// 云端和本地结果分情况解析
|
||||||
|
if ("cloud".equals(engType)) {
|
||||||
|
for (int i = 0; i < words.length(); i++) {
|
||||||
|
JSONArray items = words.getJSONObject(i).getJSONArray("cw");
|
||||||
|
for (int j = 0; j < items.length(); j++) {
|
||||||
|
JSONObject obj = items.getJSONObject(j);
|
||||||
|
if (obj.getString("w").contains("nomatch")) {
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
ret.append("【结果】" + obj.getString("w"));
|
||||||
|
ret.append("【置信度】" + obj.getInt("sc"));
|
||||||
|
ret.append("\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if ("local".equals(engType)) {
|
||||||
|
ret.append("【结果】");
|
||||||
|
for (int i = 0; i < words.length(); i++) {
|
||||||
|
JSONObject wsItem = words.getJSONObject(i);
|
||||||
|
JSONArray items = wsItem.getJSONArray("cw");
|
||||||
|
if ("<contact>".equals(wsItem.getString("slot"))) {
|
||||||
|
// 可能会有多个联系人供选择,用中括号括起来,这些候选项具有相同的置信度
|
||||||
|
ret.append("【");
|
||||||
|
for (int j = 0; j < items.length(); j++) {
|
||||||
|
JSONObject obj = items.getJSONObject(j);
|
||||||
|
if (obj.getString("w").contains("nomatch")) {
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
ret.append(obj.getString("w")).append("|");
|
||||||
|
}
|
||||||
|
ret.setCharAt(ret.length() - 1, '】');
|
||||||
|
} else {
|
||||||
|
//本地多候选按照置信度高低排序,一般选取第一个结果即可
|
||||||
|
JSONObject obj = items.getJSONObject(0);
|
||||||
|
if (obj.getString("w").contains("nomatch")) {
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
ret.append(obj.getString("w"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ret.append("【置信度】" + joResult.getInt("sc"));
|
||||||
|
ret.append("\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
}
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String parseGrammarResult(String json) {
|
||||||
|
StringBuffer ret = new StringBuffer();
|
||||||
|
try {
|
||||||
|
JSONTokener tokener = new JSONTokener(json);
|
||||||
|
JSONObject joResult = new JSONObject(tokener);
|
||||||
|
|
||||||
|
JSONArray words = joResult.getJSONArray("ws");
|
||||||
|
for (int i = 0; i < words.length(); i++) {
|
||||||
|
JSONArray items = words.getJSONObject(i).getJSONArray("cw");
|
||||||
|
for (int j = 0; j < items.length(); j++) {
|
||||||
|
JSONObject obj = items.getJSONObject(j);
|
||||||
|
if (obj.getString("w").contains("nomatch")) {
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
ret.append("【结果】" + obj.getString("w"));
|
||||||
|
ret.append("【置信度】" + obj.getInt("sc"));
|
||||||
|
ret.append("\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
}
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String parseLocalGrammarResult(String json) {
|
||||||
|
StringBuffer ret = new StringBuffer();
|
||||||
|
try {
|
||||||
|
JSONTokener tokener = new JSONTokener(json);
|
||||||
|
JSONObject joResult = new JSONObject(tokener);
|
||||||
|
|
||||||
|
JSONArray words = joResult.getJSONArray("ws");
|
||||||
|
for (int i = 0; i < words.length(); i++) {
|
||||||
|
JSONArray items = words.getJSONObject(i).getJSONArray("cw");
|
||||||
|
for (int j = 0; j < items.length(); j++) {
|
||||||
|
JSONObject obj = items.getJSONObject(j);
|
||||||
|
if (obj.getString("w").contains("nomatch")) {
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
ret.append("【结果】" + obj.getString("w"));
|
||||||
|
ret.append("\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ret.append("【置信度】" + joResult.optInt("sc"));
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
ret.append("没有匹配结果.");
|
||||||
|
}
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String parseTransResult(String json, String key) {
|
||||||
|
StringBuffer ret = new StringBuffer();
|
||||||
|
try {
|
||||||
|
JSONTokener tokener = new JSONTokener(json);
|
||||||
|
JSONObject joResult = new JSONObject(tokener);
|
||||||
|
String errorCode = joResult.optString("ret");
|
||||||
|
if (!errorCode.equals("0")) {
|
||||||
|
return joResult.optString("errmsg");
|
||||||
|
}
|
||||||
|
JSONObject transResult = joResult.optJSONObject("trans_result");
|
||||||
|
ret.append(transResult.optString(key));
|
||||||
|
/*JSONArray words = joResult.getJSONArray("results");
|
||||||
|
for (int i = 0; i < words.length(); i++) {
|
||||||
|
JSONObject obj = words.getJSONObject(i);
|
||||||
|
ret.append(obj.getString(key));
|
||||||
|
}*/
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return ret.toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,120 @@
|
|||||||
|
package net.micode.notes.video;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.app.AlertDialog;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.media.AudioManager;
|
||||||
|
import android.media.MediaPlayer;
|
||||||
|
import android.net.Uri;
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.os.CountDownTimer;
|
||||||
|
import android.util.Log;
|
||||||
|
import android.view.KeyEvent;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.Button;
|
||||||
|
import android.widget.TextView;
|
||||||
|
import android.widget.Toast;
|
||||||
|
import android.widget.VideoView;
|
||||||
|
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
|
import net.micode.notes.Login.LoginActivity;
|
||||||
|
import net.micode.notes.Login.Register;
|
||||||
|
import net.micode.notes.R;
|
||||||
|
import net.micode.notes.ui.NotesListActivity;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import java.util.Timer;
|
||||||
|
import java.util.TimerTask;
|
||||||
|
|
||||||
|
public class videoactivity extends Activity {
|
||||||
|
private VideoView video;
|
||||||
|
private AudioManager _AudioManager;
|
||||||
|
|
||||||
|
private Timer timer;
|
||||||
|
private int times = 20;
|
||||||
|
|
||||||
|
private Button tiaoguo;
|
||||||
|
|
||||||
|
private boolean ok_finish=false;
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
setContentView(R.layout.videos);
|
||||||
|
AlertDialog.Builder dialog = new AlertDialog.Builder(videoactivity.this);
|
||||||
|
dialog.setTitle("多次错误");
|
||||||
|
dialog.setMessage("该罚");
|
||||||
|
dialog.show();
|
||||||
|
tiaoguo=(Button)findViewById(R.id.tiaoguo);
|
||||||
|
_AudioManager=(AudioManager)this.getSystemService(Context.AUDIO_SERVICE);
|
||||||
|
_AudioManager.setStreamVolume(AudioManager.STREAM_MUSIC,0,AudioManager.FLAG_PLAY_SOUND);
|
||||||
|
video=findViewById(R.id.videoview);
|
||||||
|
String url="android.resource://"+getPackageName()+"/"+R.raw.banana;
|
||||||
|
// String url = "https://v2.cri.cn/M00/01/FB/rBABDWSumcCAQr0FAboZIp7NOEw200.mp4";
|
||||||
|
Uri uri=Uri.parse(url);
|
||||||
|
video.setVideoURI(uri);
|
||||||
|
// video.setVideoPath(url);
|
||||||
|
video.requestFocus();
|
||||||
|
video.start();
|
||||||
|
video.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
|
||||||
|
@Override
|
||||||
|
public void onCompletion(MediaPlayer mp) {
|
||||||
|
Intent intent = new Intent(videoactivity.this, Register.class);
|
||||||
|
Register.re_register=1;
|
||||||
|
// TextView title = (TextView) findViewById(R.id.title_register);
|
||||||
|
// title.setText("修改注册信息");
|
||||||
|
startActivity(intent);
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
initEvent();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initEvent(){
|
||||||
|
timer=new Timer();
|
||||||
|
timer.schedule(new TimerTask() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
tiaoguo.post(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
if(times<0){
|
||||||
|
ok_finish=true;
|
||||||
|
tiaoguo.setText("跳过");
|
||||||
|
timer.cancel();
|
||||||
|
}else{
|
||||||
|
tiaoguo.setText(Integer.toString(times--));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},0,1000);
|
||||||
|
|
||||||
|
tiaoguo.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
if(ok_finish) {
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
||||||
|
return true;
|
||||||
|
|
||||||
|
// return super.onKeyDown(keyCode, event);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onDestroy() {
|
||||||
|
super.onDestroy();
|
||||||
|
if(timer!=null){
|
||||||
|
timer.cancel();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#000000"
|
||||||
|
android:viewportHeight="24" android:viewportWidth="24"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="@android:color/white" android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
|
||||||
|
</vector>
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#000000"
|
||||||
|
android:viewportHeight="24" android:viewportWidth="24"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="@android:color/white" android:pathData="M21,10h-8.35C11.83,7.67 9.61,6 7,6c-3.31,0 -6,2.69 -6,6s2.69,6 6,6c2.61,0 4.83,-1.67 5.65,-4H13l2,2l2,-2l2,2l4,-4.04L21,10zM7,15c-1.65,0 -3,-1.35 -3,-3c0,-1.65 1.35,-3 3,-3s3,1.35 3,3C10,13.65 8.65,15 7,15z"/>
|
||||||
|
</vector>
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#000000"
|
||||||
|
android:viewportHeight="24" android:viewportWidth="24"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="@android:color/white" android:pathData="M12,12c2.21,0 4,-1.79 4,-4s-1.79,-4 -4,-4 -4,1.79 -4,4 1.79,4 4,4zM12,14c-2.67,0 -8,1.34 -8,4v2h16v-2c0,-2.66 -5.33,-4 -8,-4z"/>
|
||||||
|
</vector>
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
<?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:gravity="center_vertical">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/ifly_mnotice_image_container"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:scaleType="fitXY"
|
||||||
|
android:layout_height="match_parent"/>
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
@ -0,0 +1,46 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:layout_marginTop="200dp"
|
||||||
|
android:id="@+id/account"
|
||||||
|
android:layout_width="280dp"
|
||||||
|
android:layout_height="61dp"
|
||||||
|
android:layout_gravity="center_horizontal"
|
||||||
|
android:drawableLeft="@drawable/baseline_person_24"
|
||||||
|
android:hint="用户名">
|
||||||
|
|
||||||
|
</EditText>
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/password"
|
||||||
|
android:layout_width="280dp"
|
||||||
|
android:layout_height="61dp"
|
||||||
|
android:layout_gravity="center_horizontal"
|
||||||
|
android:drawableLeft="@drawable/baseline_key_24"
|
||||||
|
android:hint="密码"
|
||||||
|
android:inputType="textPassword">
|
||||||
|
|
||||||
|
</EditText>
|
||||||
|
|
||||||
|
<!-- <LinearLayout-->
|
||||||
|
<!-- android:layout_width="match_parent"-->
|
||||||
|
<!-- android:layout_height="60dp"-->
|
||||||
|
<!-- android:orientation="horizontal">-->
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:layout_marginTop="50dp"
|
||||||
|
android:id="@+id/login"
|
||||||
|
android:layout_gravity="center_horizontal"
|
||||||
|
android:layout_width="99dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:text="登录"></Button>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- </LinearLayout>-->
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
@ -0,0 +1,59 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/title_register"
|
||||||
|
android:layout_marginTop="100dp"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:text="注册"
|
||||||
|
android:textSize="30dp"
|
||||||
|
android:gravity="center" />
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_marginTop="100dp"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/register_username"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:lines="1"
|
||||||
|
android:imeOptions="actionNext"
|
||||||
|
android:paddingLeft="40dp"
|
||||||
|
android:gravity="left|center"
|
||||||
|
android:layout_width="200dp"
|
||||||
|
android:layout_height="45dp"
|
||||||
|
android:hint="用户名"
|
||||||
|
android:textSize="15sp" />
|
||||||
|
<EditText
|
||||||
|
android:id="@+id/register_password"
|
||||||
|
android:layout_marginTop="20dp"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:lines="1"
|
||||||
|
android:imeOptions="actionNext"
|
||||||
|
android:paddingLeft="40dp"
|
||||||
|
android:gravity="left|center"
|
||||||
|
android:layout_width="200dp"
|
||||||
|
android:layout_height="45dp"
|
||||||
|
android:hint="密码"
|
||||||
|
android:textSize="15sp"/>
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:id="@+id/register2_button"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:layout_marginTop="20dp"
|
||||||
|
android:text="注册"
|
||||||
|
android:layout_width="200dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="18sp"
|
||||||
|
android:gravity="center" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
<?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">
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:id="@+id/tiaoguo"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:background="#00000000"
|
||||||
|
android:layout_marginTop="23dp"
|
||||||
|
android:layout_marginRight="26dp"
|
||||||
|
android:text="跳过"
|
||||||
|
android:textColor="#ff0000">
|
||||||
|
|
||||||
|
</Button>
|
||||||
|
|
||||||
|
<VideoView
|
||||||
|
android:id="@+id/videoview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
</VideoView>
|
||||||
|
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue