【安卓作业】星座查询小程序
為了以后可以直接查看自己的代碼,不用再打開軟件,還是寫個博客吧。。。
第一次做,只完成了必要的功能,修飾什么的一概沒有,喜歡的自己去加,反正咱們做的也不會投入使用。。。
老師的要求:
計算已知生日對應的星座:
要求:1、有3個界面(歡迎界面,輸入界面,結果界面)
2、輸入生日時使用DatePicker控件或者輸入文本都可以
3、響應歡迎界面的點擊事件:
先看一下我的界面,多么的樸實無華!!!
用戶必須按照要求輸入生日,如果沒有檢測到字符“-”的話,就會出現以下界面:
彈窗的那個橢圓形,一會就會消失的。
點擊按鈕,又會回到輸入界面額。就是這么一個循環界面。
?
點擊結束查詢之后又會回到開始界面,這是一個循環使用的小程序,只添加了一點點代碼,起初是為了方便自己測試查看bug,不需要一次又一次的運行,畢竟等的時間蠻長的,后來也沒有刪,感覺這個功能還不錯。
最后再說一點,系統沒有做太強的排除性,我感覺太復雜了,,,有興趣的小伙伴自己去算吧。
哦,不過我這里沒有問出生年,也就沒有必要管你出生那一年2月到底28天還是29天了。
這個設置的呢,就是月份要在1-12之間,日期要在1-31之間。其他的不管了,不管哪一個月30天還是31天,我就不做了,雖然很簡單,但蠻復雜的,要一個一個的判斷。所以,就算你輸入4-31,我也不會報錯。。。
但是如果你輸入以下這個情況的話。。。。。。
。呵呵
對了,這里面的很多圖片都是我本機的,大家記得設置自己需要的照片。
上代碼!
雖然東西不多,但畢竟涉及到了7處的信息,有.java和.xml文件,所以我按照這個順序貼代碼了。也就對應了之前的三個界面要求。?
嗯,如果你要復制的話,看清楚package,或者,你只復制具體代碼。
歡迎界面
.java
package com.example.a86134.myapplication;import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.Button; import android.widget.TextView; //歡迎界面 public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TextView tv1=findViewById(R.id.tv1);Button bt1=findViewById(R.id.bt1);}public void startActivity2(View view){startActivity(new Intent(this,Main2Activity.class));} }.xml
?
<?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="com.example.a86134.myapplication.MainActivity"><TextViewandroid:id="@+id/tv1"style="@style/Widget.AppCompat.TextView.SpinnerItem"android:layout_width="348dp"android:layout_height="47dp"android:text="點擊下方按鈕進入星座查詢小程序"android:textAppearance="@style/TextAppearance.AppCompat.Body1"android:textColor="@android:color/holo_red_dark"android:textSize="22sp"android:visibility="visible"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintHorizontal_bias="0.506"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.114" /><Buttonandroid:id="@+id/bt1"android:layout_width="160dp"android:layout_height="64dp"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:fontFamily="sans-serif"android:onClick="startActivity2"android:text="進入系統查星座"android:textSize="18sp"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.498" /></android.support.constraint.ConstraintLayout>輸入界面
.java
package com.example.a86134.myapplication;import android.content.Intent; import android.support.v7.app.AlertDialog; 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.Toast;//輸入界面 public class Main2Activity extends AppCompatActivity {EditText et1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main2);Intent intent=getIntent();Button bt2=findViewById(R.id.bt2);et1=findViewById(R.id.et1);bt2.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {String d=et1.getText().toString();if(!"".equals(d)){Intent intent=new Intent(Main2Activity.this,Main3Activity.class);Bundle bundle=new Bundle();// bundle.putString("str",d);bundle.putCharSequence("str",d);intent.putExtras(bundle);startActivity(intent);}else {Toast.makeText(Main2Activity.this, "請先輸入您的生日信息!", Toast.LENGTH_SHORT).show();return ;}}});}}.xml
<?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="com.example.a86134.myapplication.Main2Activity"><TextViewandroid:id="@+id/tv2"android:layout_width="233dp"android:layout_height="47dp"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:text="請輸入您的生日信息:"android:textColor="@android:color/holo_red_dark"android:textSize="22sp"android:visibility="visible"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintHorizontal_bias="0.503"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.287" /><Buttonandroid:id="@+id/bt2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:text="查詢"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.695" /><EditTextandroid:id="@+id/et1"android:layout_width="800px"android:layout_height="wrap_content"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:ems="10"android:hint="請按照mm-dd格式輸入生日"android:inputType="date"android:selectAllOnFocus="true"android:singleLine="true"android:textColorHint="#95a1aa"android:textScaleX="1.5"android:textStyle="italic"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.498" /></android.support.constraint.ConstraintLayout>結果界面
.java
package com.example.a86134.myapplication;import android.content.Intent; import android.support.v4.app.BundleCompat; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast;public class Main3Activity extends AppCompatActivity {int m,d;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main3);TextView tv3=findViewById(R.id.tv3);Button bt3=findViewById(R.id.bt3);ImageView iv1=findViewById(R.id.iv1);String n="";String month="",day="";Intent intent=getIntent();Bundle bundle=intent.getExtras();String dd=bundle.getString("str");int p=dd.indexOf("-");if(p==-1){n="您輸入的生日格式有誤!";iv1.setImageResource(R.drawable.ncl);tv3.setText(n);bt3.setText("點我回去接著輸入!");bt3.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {Intent intent=new Intent(Main3Activity.this,Main2Activity.class);startActivity(intent);}});Toast.makeText(Main3Activity.this, "記得按照mm-dd格式輸入!", Toast.LENGTH_SHORT).show();return ;}m=Integer.parseInt(dd.substring(0,p));d=Integer.parseInt(dd.substring(p+1,dd.length()));if(m>0 && m<13 && d>0 && d<32){if((m==3&&d>20)||(m==4)&&d<21){n="白羊座";iv1.setImageResource(R.drawable.byz);}else if((m==4&&d>20)||(m==5&&d<21)){n="金牛座";iv1.setImageResource(R.drawable.jnz);}else if((m==5&&d>20)||(m==6&&d<22)){n="雙子座";iv1.setImageResource(R.drawable.shzz);}else if((m==6&&d>21)||(m==7&&d<23)){n="巨蟹座";iv1.setImageResource(R.drawable.jxz);}else if((m==7&&d>22)||(m==8&&d<23)){n="獅子座";iv1.setImageResource(R.drawable.szz);}else if((m==8&&d>22)||(m==9&&d<23)){n="處女座";iv1.setImageResource(R.drawable.cnz);}else if((m==9&&d>22)||(m==10&&d<23)){n="天秤座";iv1.setImageResource(R.drawable.tcz);}else if((m==10&&d>22)||(m==11&&d<22)){n="天蝎座";iv1.setImageResource(R.drawable.txz);}else if((m==11&&d>21)||m==12&&d<22){n="射手座";iv1.setImageResource(R.drawable.ssz);}else if((m==12&&d>21)||(m==1&&d<20)){n="摩羯座";iv1.setImageResource(R.drawable.mjz);}else if((m==1&&d>19)||(m==2&&d<19)){n="水瓶座";iv1.setImageResource(R.drawable.spz);}else if((m==2&&d>18||(m==3&&d<21))){n="雙魚座";iv1.setImageResource(R.drawable.syz);}}else{n="您輸入的生日信息有誤!";iv1.setImageResource(R.drawable.ncl);tv3.setText(n);bt3.setText("點我回去接著輸入!");bt3.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {Intent intent=new Intent(Main3Activity.this,Main2Activity.class);startActivity(intent);}});Toast.makeText(Main3Activity.this, "有點生活常識好不好!", Toast.LENGTH_SHORT).show();return ;}tv3.setText(n);bt3.setText("結束查詢");bt3.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {Intent intent=new Intent(Main3Activity.this,MainActivity.class);startActivity(intent);}});} }.xml
<?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:gravity="center"android:orientation="vertical"><TextViewandroid:id="@+id/tv3"style="@style/Widget.AppCompat.TextView.SpinnerItem"android:layout_width="300dp"android:layout_height="40dp"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:text="結果"android:gravity="center_horizontal"android:textColor="@android:color/holo_red_dark"android:textSize="24sp" /><ImageViewandroid:id="@+id/iv1"android:layout_width="280dp"android:layout_height="200dp"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:scaleType="fitCenter"/><Buttonandroid:id="@+id/bt3"android:layout_width="200dp"android:layout_height="50dp"android:layout_marginBottom="8dp"android:layout_marginEnd="8dp"android:layout_marginStart="8dp"android:layout_marginTop="8dp"android:text="結束查詢"/></LinearLayout>AndroidMainifest.xml文件
在這里可以設置哪一個為主界面,以及個頁面的名字(左上角的那個)。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.a86134.myapplication"><applicationandroid: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"><activityandroid:name=".MainActivity"android:label="歡迎您的使用"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><activityandroid:name=".Main2Activity"android:label="星座查詢界面"></activity><activity android:name=".Main3Activity"android:label="星座查詢結果"></activity></application></manifest>?
?
?
?
?
總結
以上是生活随笔為你收集整理的【安卓作业】星座查询小程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 客户端调用 Tuxedo中间件
- 下一篇: 如何抓住重点,系统高效地学习数据结构与算