學生黨簡易情人節表白App(Android)

學生黨一枚,前段時間因爲做東西需要,自學了一點Android,然後前段時間情人節突發奇想,自己做一個情人節表白的app,畢竟是初學者,做的很簡單,這裏只提供一個模板,文字、圖片、視頻大家可以根據需要自己更換,如果有喜歡的或者想用的話可以借鑑參考一下,祝大家好運,找到自己喜歡的那個人~

P.S.  新手上路,做的很簡單,除了網上找材料什麼的時間,很快就做出來了,僅製作了三個界面MainActivity、SecondActivity、VideoActivity,可能有一些地方代碼寫的不是很規範或者不太符合現在開發的一些寫法,如有什麼問題請大家批評指正,謝謝。

代碼壓縮包已放入百度網盤,如有需要自行下載:https://pan.baidu.com/s/1QQALADzeX0_riFIX0GHZ2w  提取碼:9cwz


自定義標題欄佈局

title_bar.xml

<?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="56dp"
    android:background="@drawable/newbar">

    <ImageView
        android:id="@+id/ib_title_back"
        android:layout_marginTop="14dp"
        android:layout_width="24dp"
        android:layout_height="28dp"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="12dp"
        android:src="@drawable/white_back_button" />

    <TextView
        android:id="@+id/tv_title1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginLeft="115dp"
        android:text="標題"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"
        android:textColor="#AA049E"
        android:textSize="25sp"
        android:textStyle="bold"/>

</RelativeLayout>

 noback_title_bar.xml

<?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="56dp"
    android:background="@drawable/bar">

    <ImageView
        android:id="@+id/exitbutton"
        android:layout_marginTop="14dp"
        android:layout_width="22dp"
        android:layout_height="28dp"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="330dp"
        android:src="@drawable/exitbutton" />

    <TextView
        android:id="@+id/tv_title0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginLeft="115dp"
        android:text="標題"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"
        android:textColor="#FF8E3D"
        android:textSize="25sp"
        android:textStyle="bold"/>

</RelativeLayout>

MainActivity以及佈局

activity_main.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=".MainActivity">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/first"
        android:orientation="vertical">

        <include layout="@layout/noback_title_bar"></include>

        <Button
            android:id="@+id/btn_loginIn"
            android:layout_width="164dp"
            android:layout_height="46dp"
            android:layout_centerHorizontal="true"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="90dp"
            android:background="@drawable/login_buttonstyle"
            android:text="Click to enter"
            android:textSize="18dp"
            android:textColor="#FFFFFF"
            android:textStyle="bold">
        </Button>

    </RelativeLayout>

</android.support.constraint.ConstraintLayout>

MainActivity.java

package sdust.project.valentinesday;

import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    //標題欄處理文本
    private TextView tv_title0;
    //跳轉按鈕
    private Button enterButton;
    //處理退出程序的按鈕
    private ImageView exitButton;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //首先處理標題欄
        tv_title0 = (TextView) findViewById(R.id.tv_title0);
        tv_title0.setText("情人節快樂!");
        tv_title0.setGravity(Gravity.CENTER);

        enterButton = (Button)findViewById(R.id.btn_loginIn);
        exitButton = (ImageView)findViewById(R.id.exitbutton);

        enterButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, SecondActivity.class);
                startActivity(intent);
            }
        });
        exitButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                showDialog();
            }
        });
    }
    private void showDialog(){
        AlertDialog.Builder builder=new AlertDialog.Builder(this);
        builder.setIcon(R.drawable.tishi);
        builder.setTitle("溫馨提示o(≧v≦)o");
        builder.setMessage("點擊 EXIT 退出,謝謝觀看,愛你呦!");
        builder.setPositiveButton("EXIT",
                new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        finish();
                    }
                });
        AlertDialog dialog=builder.create();
        dialog.show();

    }

}

SecondActivity以及佈局

activity_second.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=".SecondActivity">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/gift_card">

        <include layout="@layout/title_bar"></include>

        <TextView
            android:layout_marginTop="84dp"
            android:layout_width="230dp"
            android:layout_height="34dp"
            android:layout_centerHorizontal="true"
            android:text="Dear girlfriend:"
            android:textSize="25dp"
            android:textStyle="bold"
            android:textColor="#5D2C09">
        </TextView>

        <TextView
            android:layout_marginTop="122dp"
            android:layout_width="230dp"
            android:layout_height="350dp"
            android:layout_centerHorizontal="true"
            android:text="添加表白的文字"
            android:textSize="25dp"
            android:textColor="#5D2C09">
        </TextView>

        <Button
            android:id="@+id/btn_video"
            android:layout_marginLeft="230dp"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="90dp"
            android:layout_width="66dp"
            android:layout_height="46dp"
            android:background="@drawable/login_buttonstyle"
            android:text="點我!"
            android:textSize="18dp"
            android:textColor="#FFFFFF"
            android:textStyle="bold">

        </Button>

    </RelativeLayout>

</android.support.constraint.ConstraintLayout>

SecondActivity.java

package sdust.project.valentinesday;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

public class SecondActivity extends AppCompatActivity {
    //標題欄處理文本
    private TextView tv_title1;
    //返回主界面按鈕
    private ImageView btn_backFirstPage;
    //跳轉按鈕
    private Button videoButton;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        //首先處理標題欄
        tv_title1 = (TextView) findViewById(R.id.tv_title1);
        tv_title1.setText("Greeting Card");
        tv_title1.setGravity(Gravity.CENTER);
        //獲得返回按鈕
        btn_backFirstPage = (ImageView)findViewById(R.id.ib_title_back);
        //跳轉播放頁面
        videoButton = (Button)findViewById(R.id.btn_video);
        //設置返回主界面按鈕
        btn_backFirstPage.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
        //跳轉播放視頻頁面
        videoButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SecondActivity.this, VideoActivity.class);
                startActivity(intent);
            }
        });

    }
}

VideoActivity以及佈局

activity_video.xml

<?xml version="1.0" encoding="utf-8"?>
<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:orientation="vertical">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/videobackground">

        <include layout="@layout/title_bar"></include>

        <RelativeLayout
            android:layout_marginTop="56dp"
            android:layout_width="match_parent"
            android:layout_height="200dp">

            <VideoView
                android:id="@+id/videoView"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_alignParentRight="true"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true"
                android:layout_alignParentBottom="true"/>
        </RelativeLayout>

        <RelativeLayout
            android:layout_marginTop="256dp"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="300dp"
                android:layout_height="300dp"
                android:layout_centerHorizontal="true"
                android:layout_centerVertical="true"
                android:src="@drawable/ewm" />

        </RelativeLayout>

    </RelativeLayout>

</LinearLayout>

VideoActivity.java

package sdust.project.valentinesday;

import android.graphics.PixelFormat;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.Gravity;
import android.view.View;
import android.widget.ImageView;
import android.widget.MediaController;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.VideoView;

public class VideoActivity extends AppCompatActivity {
    //標題欄處理文本
    private TextView tv_title1;
    //視頻播放
    private VideoView videoLocal;
    //進度條
    MediaController localMediaController;
    //返回賀卡界面按鈕
    private ImageView btn_backPage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().setFormat(PixelFormat.TRANSLUCENT);
        setContentView(R.layout.activity_video);
        //首先處理標題欄
        tv_title1 = (TextView) findViewById(R.id.tv_title1);
        tv_title1.setText("Greeting Video");
        tv_title1.setGravity(Gravity.CENTER);
        //獲得返回按鈕
        btn_backPage = (ImageView)findViewById(R.id.ib_title_back);

        //視頻播放模塊
        initLocalVideo();

        //設置返回主界面按鈕
        btn_backPage.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });

    }
    //播放本地視頻
    private void initLocalVideo() {
        //獲得視頻的id
        videoLocal = (VideoView)findViewById(R.id.videoView);
        //設置有進度條可以拖動快進
        localMediaController = new MediaController(VideoActivity.this);
        String uri = ("android.resource://" + getPackageName() + "/" + R.raw.love);
        videoLocal.setVideoURI(Uri.parse(uri));
        // 設置videoView和mController建立關聯
        videoLocal.setMediaController(localMediaController);
        // 設置mController和videoView建立關聯
        localMediaController.setMediaPlayer(videoLocal);
        // 讓VideoView獲取焦點
        videoLocal.requestFocus();
        videoLocal.start();
    }
}

最終效果展示

情人節表白app展示.mp4

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章