1、《Android基础应用开发》实验报告 实验名称: Android基础应用开发任课教师:—赵淑贤 专业: 班级: 姓名: 学号: 完成日期:成绩: 一、实验目的: 二、实验内容及要求: 实现一个APP:包含登陆界面、注册界面、主界面、详情界面之间的跳转,参考、微信等。 1 .登陆界面包含:用户名、密码、记住密码、“注册”按钮、“登陆”按钮;具有一个action bar:包含刷新,搜 索、更换背景三个选项;注册界面:姓名、性别(radiobutton)、年龄、祖籍(spiner)、个人照片(image) >这学期学习的所有课程 (使用checkbox,选择自己喜欢的2门课程)、注册
2、完成按钮;
2. 主界面参考例5-14,每个均可以点击;点击注册按钮可以跳转到注册界面、点击登陆可以跳转到主界面,点击注册完成跳转回登陆界面、点击主界面中 的任意一个跳转到一个list view (参考例5-12),点击任意行弹出alertdailog,显示内容自拟;
备注:图片资源自选;
三、实验步骤:
1.
■k File Edit View Navigate £ode Analyze Refactor guild Ryn Tools VCS Window Help MyA( .dic^ 3、ter app s»c main res layout % activity Joginxml
、 M app ▼ C Pixel 2 API 30 ▼M Android O 三《 欢一
AndroidManifest.xml Q Register Activity .javaQ LoginActivity.java activity_login.xml regHtef.xml7 ・ manifests.
愚 AndroidManifestxmlqv lijava
>
> Bi coraexdmple.rnyapplicdt7 Bi loginRegister G index G L 4、oginActivity 0 RegisterActivity
y java (gmw '*ed'▼ Ci com.example.mydpplicat 与 BuildConfig
y *]re$12 S
> Bi drawableA2 卜 v
・ConstraintLayout x.lns:android二”ht誓 x«lns:app=*" XBlns:tooLs=" ://schemas.android /tool5*android:id="@+id/container" android: l 5、ayout_width
android:layout_height "mutcr._p— ent" android:paddingLeft "16dp"android:paddingTop "16dp" android:paddingRight=M16dp" android:paddingBottom "16dp"
android :background="(?)draBabl.e/ba(.-:grou> Ci activityjogin (3) % indexxml 史 register.xml
> Bi menu
> fil mipmap
> £■ navigation
> t 6、l values
峰 res ;enerated)> • Gradle Scripts
7、5 minutes ago)
^nd^oi !:background ■ '•: '.eJ"
Android:scaleType
3ndroi^:src
3DP:layout_constraintBotto«_toTopOf
jap:Layout_constraintEnd_toEndOf
app: Layout_constraintStart_toStartOf,;5:
3pp:layout_constraintTop_toTopOf app:Layout_constraintVertical_bias >
8、id=n94id/usernane"
anrtroirtrlavovt Widthe"Rrtn"C、Profiter . App Inspection
^scoaf M®
p在这里输入你要搜索的内容o tit
■ £dit View Navigate Code Analyse Refactor Build Ryn android register app src main res layout reqister.xmlTools VCS Window Help My Application register.xml IMy Appr
M Android O 三《Q —v BS app 9、
v ・ manifests 思 AndroidManifestxml
v .java
> EB com.example. myapplicat
> ta com.ex» 10、a 思 activity_login.xml
1 k?x»l version = w1.0" encoding "utf-8"?>A10 公 v.0 <^LativeLayout XMtns:android=" android:layout_width="natch.parent" android :*0。5。坷时=脆切口2心2'
B android :background=(adraBable/background"> 11、marginLeft dndroit:layout_narginTop
android:text '7 邢-”▼ Babyout
> Bl activity Jogin 3) 思 indexxmlX& register.xml
> Di menu
> Di mipmap
> CB navigationEl values lEres ger;e«j-ed
・ Gradk Scripts
3 TODO O ProbJetns ■ Terminal Q • daemon started sixcessfully (5 minutes ago)
3ndroid:textSize
oi 12、e: typeface> 13、isnBottom *"G-»L"■: 1 avout toRiohtOf,,* >c/FditTsxt>
W Logcat /7i Profiler ■ App Inspectionp在这里输入你要搜索的内容
ata-
1:1Q Event LogR Layout Inspector
1:1 LF4 spaces 鲁❷。
CH •• 13T多云八
营 ax 15:102021/11/14
'"on PI、 M app ▼ C- Pixel 2 API 30 ▼►除
竺 register .xml•亳◎,妙.Q Pixel v M 31 v © MyApplication *
14、
M 15、gate Code Analyze gefactor Build Ryn Tools VCS Window Help My Ap lica-.oi n -n My A, plic ). | android register app src main res layout 悬 index-xmlC Pixel 2 API 30 ▼
&/7tCP X
M Android O 三《。一AndroidManifest.xml G Reghter Activity .javaO LoginActivity.java“ activity Jogin.xml
君 regtster.x 16、x.xml
」♦?£ 芝・¥os・*7 ・ manifests
恐 AndroidManifestxml
. java
>
>
7 Bi loginRegister Q index Q LoginActivity 0 RegisterActivity y java (gvner red;
▼ Ci com.example.myapplicai ❹ BuildConfig y *|re(
> Bi drawableAl 公▼
ondroidx.constraintlayout.widget.Const 17、raintLayout xmlns:android- 'h?tp• xnlns:app=" :" xalns:tools=,*, android. com/toolsM android:layout_width=,,match_parenT' android:laYOut_height 'natch.parent" android:background = "facirawable/background > 18、height: "w ap.content11£ * 妙.口 Pixel v m 31
=Code© MyApplication 〜 ⑥ Default (en-u$)〜
Gil Split E3 Design •
I.
£ LAyou- vlds.035AttHb£w
▼ Babyout
> H activityjogin 3)indexjcml
g reglster.xml
> Eli menu
> tl mipmap
> Cl navigation
> Di values
res qer:e:died统 Gradle Scripts
androi :texts 19、ize
android:textColor- Jandroid:coLor/holo_ ed.Lighf app:layout_constraintBottom_toBottoniOf pawn" app:layout.constraintEnd_toEndOf paront" app:layout.constraintStart.toStartOf •parent” appzlayout-ConstraintTop.toTopOf parent*1 /> R Emc_・8r
* 20、z・ Expomr
3 TODO O ProbJetns ■ Terminal Q • daemon started sixcessfully (5 minutes ago)W Logcat /7i Profiler ■ App Inspection
Q Event Log1:1 CRLF
质 Layout Inspector4 spaces鲁⑤⑤
p在这里输入你要搜索的内容at
■k File Edit View Navigate Code Analyze Refactor guild Ryn Tools VCS Window android register app src ma 21、in java loginRegister G> LoginActivity Q onClickHelp MyApplication LoginActivity.javd
\ M app ▼ C Pixel 2 API 30 ▼」♦?£ 芝・¥os・*
M Androicf O M《。一已 Android Manifest.xml G Register Activity .java v fcapp
v li manifests
出 AndroidManifestxml
y lijava
>
> Ci com.ex» 22、javd .Ktivity loginjcml regi$tef.xml
checkboxl.setOnClickListener(this); checkbox2.set0nCLickListener(this);index.xml 0 indexjava
v EB loginRegister3 index
• LoginActivity G RegisterActivity 佑J; jsva (ge'H't
■ BuildConfig Bf resE drawabk v El layout
> Qi activity_login 3) 尽 indexxml & register. 23、xmlBi menu
^Override public void onCllck(View view) { Intent String String switchintent=new IntentO; nam«3Username.getText().toStringO; psw=password.getText().toStringO.tria(); (view.getld()){
case R.id.loginif(TextUtils.isFnpty(na«e) 11 TextUtils.isEnptg(psw)){
Toast.nakeText( context LoginActiv 24、ity. this, tex- ,'备元站E, Toast. SHORT) .show();>else{
if (checkboxl.isCheckedOX
〃记住密码
ResourceBundle preferences = null;
String nanals preferences.getStringC key: •nane");
String passwd=pref®rences.getStringC k*v -pass");
username.setText(namel);
> ta mipmap
> Cl navigation
> tB values
res 25、Qc,n<*id*eL> • Gradle Scripts
password.setText(passwd);
checkboxl.setChecked(true); }
if (checkbox2.isChecked())-(
〃自动登录
checkbox2.setChecked(true); }
Toast .make Text (get Applicat ionContext (),g /", Toast.LEAI6rw_SH0ffr) .show();
intent.setClass(getApplicationcontext(), index.class);break 26、
//点击注昭拧钮事件时 case R.id.re u -tpintent.setClass(getApplicationContext(), RegisterActivity.class); break; }
startActivity(intent);
三 TODO 0 Problems B Terminal W Logcat Ch Profiler ft App Inspection Q • daemon started successfully (7 minutes ago)P在这里输入你要搜索的内容
at
27、
■ File £dit View Navigate Code Analyse gefactor guild Ryn Tools VCS Window Help MyAp I"心 I* 1y…android register app src main java loginRegister Q RegisterActivity Q onCIkk\ M app ▼ CL Pixel 2 API 30 ■
」♦?£ 芝・¥os・*M Android O 三《。一% AndroidManifest.xmlf-> RegisterActivity 28、javaQ LoginActivity.java 忍 activityjogin.xml冶 register.xinl
v WPP
v ・ manifests
£ AndroidManifestxml
v fel java
> E> com.example. myapplicat
> Di c om.ex«mple. myapplicatindex.xml 0 indexjava
〜EB loginRegister G index O Log inActivity ❷ RegisterActivityV* java (gvoet '*e<1
■ BuildConfigBf 29、 res
> E drawabkv El layout
40
ol@usname:(Edit!ext) findViewById(R.id.username); password=(EditText) findViewById(R.id.password); enail=(EditText) findViewById(R.id.email); phones(EditText) findViewById(R.id.p/ione);
< eglster=(Button) findViewById(R.id.register); returnLogins(Button) findViewBy 30、ld(R.id.Iquit);register.setOnClickListener(this); returnLogin.s®tOnClickList«ner(this);
> Bl activity Jogin 3)
Intent
% indexxml
String
& reglster.xml
String
Bi menu
String
bl mipmap.6
String
Cl navigation
switch
> El values
K|res generated:
> • Gradle Scripts(aOverride| public void 31、 onClick(View view) { intent =ne« IntentO; ys^rnai1® = usname.getTextO .toStringO. trin(); psw = password.getTextO .toStringO ; enaillsenail.getText().toString() phonelsphone .getTextO .toStringO .trim(); (view.getldO) {
case if(TextUtils.isEmpty(usrnane) 11 Textlltils.isEfflpty(psw) 11 TextUtits.i 32、sEfflpty(enail.l) I I TextUtil.s.isE«ipty(phonel)){ Toast.makeText( > RegisterActivity.this, 心:::“各尤均「花'Toast.LEN6DLS也RT).show();
}else {
Toast.mafceTextCRegisterActivity.this, i
,Toast. LENG TH_SHORT'). show();break;
case R.id.
intent.setClass(getApplication(),index.class); break;
S TODO O Pr 33、oNems EB Terminal 口 , daemon started su 34、ter G index O onCreate' M app ▼ Cg Pixel 2 API 30 ▼M Android O 王《欢一
v WPP
~ ・ manifests
必 AndroidManifestxml
v to java
>
> tl com.ex» 35、nRegister;:% index.xml
c?E3c_M0r
Q Event Log R Layout Inspector 40; 14 CRLF UTF-8 4 spaces 鲁⑤⑤• 13・C多云八
0 indexjava
0 Log inActivity O RegisterActivity
踪 java (gv-iefd'eitv d com.example.myapplicat 与 RuildConfig
Bjres
> bl drawabk
v Bi layout> Bl activity_login . i)
黑 indexxml
0 register.x 36、ml
> Bi menu
> bl mipmap
> KB navigation
> El valuer
lEres ger:e«died> Hi Gradle Scripts
public class index extends AppCompatActivity {
^Overrideprotected void onCreate(0Nullable Bundle savedlnstanceState) { super.onCreate(savedlnstanceState);
setContentView (R. layout. index) ;|
}cS E3U»§
37、
3 TODO 0 Problems B Terminal Q • daemon started sixcessfully (8 minutes ago)W Logcat f7i Profiler ■ App Inspection
Q Event Log N Layout Inspector 14:40 CRLF UTF-8 4 spaces 鲁⑤⑤p在这里输入你要搜索的内容
at
■k File Edit View Navigate Code Analyz 38、e Refactor Build Ryn Tools VCS Window Help/kpplic
北 oidN、 M app * 匚 Pixel 2 API 30 ▼
¥ M Android £
3 ¥ m 欢-
-AndroidManifesLxml
£ = A app
39、x 40、yout
> Qi activity_login .3)indexxml
思 register.xml
> Bi menu
> Di mipmap
> CB navigation
> El valuer
Be res jeneiated> ・ Gradle Scripts
package con.e^ar sLe.iuyapplication〈application androidzallowBackup "•- android:icon*■@drawable/qq" android:label "« W android: roundlcon=**@drawable/b and 41、roid:supportsRtl ":ru, android: theme ■Jstyle/The'ie.My octivity
android:name-"LoginRegiste android:exported 'true" android:Label R" > 42、/activity>>
〈/manifest〉manifest application
—_ _ _ _ _Text Merged Manifestm TOGO 0 ProWems 09 Terminal £ Logcat ft、Profited ■ App Inspection
1 daemon started successfully (8 minutes ago)Q碧■
Q在这里输入你要搜索的内容Mi
Q Event LogR Layout Inspector11:35 CRLF4 spaces 告⑤。
四、实验结果与结论:
首页为activity_login,点击注册跳转到register页面,点击登录,跳转到index页面五、实验中遇到的问题及解决方法:
注意:如果答题纸不够,可反面答题!
NY
欢迎注册用户名:
雄村:
封籍:
:
注册返回CP X
o=Code El Split B Design 5
Default (en-u$)〜❶兰
欢迎注册
曲户和
|x
RW
血;Ki:
fil ?) w
J里
??0aE0u<£)Q Event Log
1:1 CRLF质 Layout Inspector
4 spaces鲁⑤⑤
A File Edit View Navi






