1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ Án Cá Nhân Lập Trình Ứng Dụng Cho Các Thiết Bị Di Động Đề Tài Ứng Dụng Quản Lý Ghi Chú.pdf

20 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

oe So SK OSS OO BO GIAO DUC VA DAO TAO Trường Đại Học Duy Tân ĐỎ ÁN CÁ NHÂN LẬP TRÌNH ỨNG DỤNG CHO CÁC THIẾT BỊ DI ĐỘNG ĐÈ TÀI : Ứng Dụng Quản Lý Ghi Chú

|

Lớp : CR 424 AM Giảng Viên : Phạm An Bình

Sinh viên thực hiện : Bùi Văn Bình Mã Sinh Viên : 27211240478

Trang 2

Contents

1 Thiét ké giao di@in oe c.cccccccccccssessssssessessecsecsecsecsscssssscasesseesesseesscscassseansneateseseeseeeesees 4

1.1 Giao diện chính của ủng dụng - - + so nọ ng ng ng re 4 1.2 Giao diện Lịch sữ phép tínhh - <5 + sọ ng ng ng 4

1.3 c6 nh h6ố QÄ|A ÔỎ 5

Trang 3

1 Thiết kế giao diện

Trang 5

Máy Tính

PHÉP TÍNH HISTORY PHEP TINH Bấm Giờ

9X6=54 9X6=54 —

543 - 3 = 540 543 - 3 = 540 540 + 6 = 546 540 + 6 = 546

0:00:757

0:01:124 0:01:492

0:01:842

0:02:177 0:02:527 0:02:876 0:03:265 0:03:775

Trang 6

3 Toàn bộ Code 3.1 Code chức năng

File Mainactyvity.java

package com.example.maytinhll 12;

import import import import import import import import import import import import import import import import import import public

androidx.annotation.NonNull; androidx.appcompat.app.AlertDialog; androidx.appcompat.app.AppCompatActivity; androidx.appcompat.widget.Toolbar; android.content.DialogInterface; android.content Intent; android.os.Bundle; android.util.Log; android.view.Menu; android.view.MenulInflater; android.view.Menultem; android.view.View; android.widget.AdapterView; android.widget.ArrayAdapter; android.widget.Button; android.widget.ListView; android.widget.TabHost; android.widget.TextView; android.widget.Toast; java.util.ArrayList;

class MainActivity extends AppCompatActivity { Integer sol =0;

Integer so2 =0; Character dau = null; Button btnthoat; ListView lvHistory; ArrayList<String>dskq;

ArrayAdapter<String>adapterkqne; @Override

protected void onCreate (Bundle savedInstanceState)

}

super.onCreate (savedInstanceState);

setContentView(R.layout.activity main);

Trang 7

btnthoat.setonClickListener (new View.OnClickListener() { @Override

public void onClick(View v) { AlertDialog.Builder builder = new

AlertDialog Builder (MainActivity.this,

android.R.style Theme DeviceDefault Light Dialog);

builder.setTitle("Bạn có muốn thoat khdi tng dung ?");

builder.setMessage ("Hay lya chọn bên dưới để xác nhận");

builder.setIcon(android.R.drawable.ic dialog alert);

builder.setPositiveButton("Cé6", new DialogInterface.OnClickListener() { @Override public void onClick(Dialoginterface dialog, int which) { onBackPressed(); } })z builder.setNegativeButton("Khéng", new DialogInterface.OnClickListener() { @Override public void onClick(Dialoginterface dialog, int which) { } })z builder.show(); })z }

private void addEvents() {

final TextView txtvkq = (TextView) findViewById(R.id.kq);

Button So0 =(Button) findViewByld(R.id.so0);So0.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v) { txtvkq.setText (txtvkq.getText().toString()+"0");if(dau == null) {sel Integer parseInt (txtvkq.getText().toString());} else {so2 =

Tnteger.parseTnt (txtvkq.getText().toString());} }})z

Button Sol =(Button) findViewByld(R.id.sol);Sol.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v) { txtvkq.setText (txtvkq.getText().toString()+"1");if(dau == null) {sel Integer parseInt (txtvkq.getText().toString());} else {so2 =

Tnteger.parseTnt (txtvkq.getText().toString());} }})z

Button So2 =(Button) findViewByld(R.id.so2);So2.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v) { txtvkq.setText (txtvkq.getText().toString()+"2");if(dau == null) {sel Integer parseInt (txtvkq.getText().toString());} else {so2 =

Tnteger.parseTnt (txtvkq.getText().toString());} }})z

Button So3 =(Button) findViewByld(R.id.so3);So3.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v) { txtvkq.setText (txtvkq.getText ().toString()+"3");if(dau == null) {sel Integer parseInt (txtvkq.getText().toString());} else {so2 =

Integer.parselInt (txtvkq.getText().toString());} }!)z

Button So4 =(Button) findViewByld(R.id.so4);So4.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v)

{ txtvkq.setText (txtvkq.getText ().toString()+"4");if(dau == null) {sol = Integer parseInt (txtvkq.getText().toString());} else {so2 =

Trang 8

{ txtvkq.setText (txtvkq.getText ().toString()+"5");if(dau == null) {sol = Integer parseInt (txtvkq.getText().toString());} else {so2 =

Integer.parselInt (txtvkq.getText().toString());} }!)z

Button So6 =(Button) findViewByld(R.id.so6);So6.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v)

{ txtvkq.setText (txtvkq.getText ().toString()+"6");i1f(dau == null) {sol = Integer parseInt (txtvkq.getText().toString());} else {so2 =

Tnteger.parseTnt (txtvkq.getText().toString());} }})z

Button So7 =(Button) findViewByld(R.id.so7);So7.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v)

{ txtvkq.setText (txtvkq.getText ().toString()+"7");if(dau == null) {sol = Integer parseInt (txtvkq.getText().toString());} else {so2 =

Tnteger.parseTnt (txtvkq.getText().toString());} }})z

Button So8 =(Button) findViewByld(R.id.so8);So8.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v)

{ txtvkq.setText (txtvkq.getText ().toString()+"8");if(dau == null) {sol = Integer parseInt (txtvkq.getText().toString());} else {so2 =

Tnteger.parseTnt (txtvkq.getText().toString());} }})z

Button So9 =(Button) findViewByld(R.id.so9);So9.setOnClickListener (new

View.OnClickListener() {@Override public void onClick(View v)

{ txtvkq.setText (txtvkq.getText ().toString()+"9");if(dau == null) {sol = Integer parseInt (txtvkq.getText().toString());} else {so2 =

Integer.parselInt (txtvkq.getText().toString());} }!)z Button Bo = (Button) findViewById(R.id.bo);

Bo.setOnClickListener (new View.OnClickListener() { @Override public void onClick(View v) { so2 =0; txtvkq.setText(""); })z

Button Cong =(Button) findViewByld(R.id.cong);

Cong setOnClickListener (new View.OnClickListener() { @Override public void onClick(View v) { dau = '+'; txtvkq.setText(""); })z

Button Tru =(Button) findViewByld(R.id.tru);

Tru setOnClickListener (new View.OnClickListener({) { @Override public void onClick(View v) { dau = '-'; txtvkq.setText(""); })z

Button Nhan =(Button) findViewByld(R.id.nhan);

Nhan.setOnClickListener (new View.OnClickListener() {

Trang 9

dau = 'X!; txtvkq.setText(""); })z

Button Chia =(Button) findViewByld(R.id.chia);

Chia.setOnClickTistener (new View.OnClickTistener() { @Override public void onClick(View v) { dau = '/'; txtvkq.setText(""); })z

Button Bang =(Button) findViewByld(R.id.bang);

Bang setOnClickListener (new View.OnClickListener() { @Override public void onClick(View v) { if (dau!=null) { Integer kqne =0; switch (dau) {

case '+';:{

kqne = sol + so2; break;

} case '-'rf{

kqne = sol - so2; break;

} case 'X':{

kqne = sol * so2; break;

} case '/':f{

kqne = sol / so2;

break; } }

txtvkq.setText (kqne.toString());

dskq.add(Tnteger.toString(sol) + " " + đau + " "+

Tnteger.toString(so2) + " = " + String.valueOf(kqne)); sol = kqne;

dau = null;

adapterkqne.notifyDataSetChanged({);

Trang 10

@Override

public void onClick(View v) { sol =0;

so2 =0; dau =null; txtvkq.setText(""); private void addControls() {

TabHost tabHost= (TabHost) findViewById(R.id.tabHost); tabHost.setup();

TabHost.TabSpec tabl=tabHost.newTabSpec("t1"); tabl.setindicator("Phép Tinh");

tabl.setContent (R.id.tabl); tabHost.addTab(tabl);

TabHost.TabSpec tab2=tabHost.newTabSpec("t2"); tab2.setIindicator ("History");

tab2.setContent (R.id.tab2); tabHost.addTab(tab2);

lvHistory=(ListView) findViewByld(R.id.lvHistory); dskq=new ArrayList<>();

adapterkqne= new ArrayAdapter<String> (

MainActivity.this,

android.R.layout.simple list item 1,

dskq);

lvHistory.setAdapter(adapterkqne); }

public boolean onCreateOptionsMenu (Menu menu) {

// Inflate menu tu tép tin XML

MenuTnflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu_demo, menu); return true; } @Override public boolean onOptionsItemSelected(@NonNull MenulItem item) { int id = item getItemId(); if (id == R.id.menu_calculator) {

Toast.makeText (this, "day là phần máy tinh ",

Toast.LENGTH SHORT) show();

return true;

} else if (id == R.id.menu_timer) {

⁄/ Bắt đầu hoạt động bamgio

Toast.makeText (this, "đã chuyển đến phần bắm giờ ",

Trang 11

try {

Intent timerIntent = new Intent(this, bamgio.class); startActivity(timerIntent);

return true; } catch (Exception e) {

Log.e("MenuSelection", "Lỗi khi bắt đầu hoạt động Timer", e);

return false; } } else { return super onOptionsitemSelected(item); } File bamgiojava package com.example.maytinhll 12; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; import android.content.Intent;

import android.os.Bundle; import android.os.Handler; import android.os.SystemClock; import android.util.Log; import android.view.Menu; import android.view.MenulInflater; import android.view.Menultem; import android.view.View;

import android.widget.ArrayAdapter; import android.widget Button; import android.widget ListView; import android.widget.TextView; import android.widget.Toast; import java.util.ArrayList;

public class bamgio extends AppCompatActivity { Button btnStop, btnStart, btnPause, btnCount; TextView txtTimer;

ListView lvCount;

long 1StartTime, lPauseTime, lSystemTime = 0L; boolean isRun;

Handler handler = new Handler();

Trang 12

btnStep = findViewById(R.id.btnStop); btnPause = findViewByld(R.id.btnPause); txtTimer = findViewByld(R.id.txtTimer); btnCount = findViewByld(R.id.btnCount); lvCount = findViewByld(R.id.ivCount); clickStart

clickStop (

clickPause clickCount

)z

(

)z On ()3 // Khoi tao adapter cho ListView adapter = new ArrayAdapter<> (this, android.R.layout.simple list _item_1, timeList); lvCount.setAdapter (adapter); Toolbar toolbar = findViewByld(R.id.toolbar2); setSupportActionBar (toolbar); setTitle ("Bam giờ"); } void clickStart() { btnStart.setonClickListener (new View.OnClickListener() { @Override public void onClick(View v) { if (isRun) return; isRun = true;

lStartTime = SystemClock.uptimeMillis() - lIPauseTime; // Cập nhật 1StartTime

handler.postDelayed(runnable, 0); } })z } void clickStop() { btnStop.setonClickListener (new View.OnClickListener() { @Override public void onClick(View v) { isRun = false; 1StartTime = 0; l1PauseTime = 0; lSystemTime = 0;

handler.removeCallbacks (runnable); txtTimer.setText ("0:00:000"); // Lam moi ListView

timeList.clear();

adapter.notifyDataSetChanged(); void clickPause() {

btnPause.setOnClickListener (new View.OnClickListener() {

@Override

Trang 13

if (!isRun) return; isRun = false;

lPauseTime = SystemClock.uptimeMillis() - IStartTime; // C&ap nhật 1PauseTime

handler.removeCallbacks (runnable); } })z } voiqd click€eunt() { btnCount.setOnClickTistener (new View.OnClickTlistener() { @Override public void onClick(View v) { if (isRun) { String currentTime txtTimer.getText().toString(); timeList.add(currentTime) ; adapter.notifyDataSetChanged(); })z } Runnable runnable new Runnable() { @Override public void run() { if (isRun) {

ilSystemTime = SystemClock.uptimeMillis() - lStartTime;

long 1UpdateTime lPauseTime + 1SystemTime;

long secs (long) (lUpdateTime / 1000);

long mins secs / 60;

secs = secs % 60;

long milliseconds = (long) (lUpdateTime % 1000);

txtTimer.setText("" + mins + ":" + String format("%$02d", secs)

+ "i" + String format ("$03d", milliseconds) ) ))z

handler.postDelayed (this, 0);

} }

Me

public boolean onCreateOptionsMenu (Menu menu) {

// Inflate menu tu tép tin XML

MenuTnflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu_demo, menu); return true;

} @Override

public boolean onOptionsItemSelected(@NonNull MenulItem item) { int id = item getItemId();

if (id == R.id.menu_timer) {

Toast.makeText (this, "đây là phần bấm gid",

Toast.LENGTH SHORT) show();

return true;

} else if (id == R.id.menu calculator) {

⁄/ Bắt đầu hoạt động bamgio

Trang 14

Toast.makeText (this, "đã chuyển đến phần máy tinh ",

Toast.LENGTH SHORT) show();

try {

Intent timerIntent = new Intent(this, MainActivity.class); startActivity(timerIntent);

return true; } catch (Exception e) {

Log.e("MenuSelection", "Lỗi khi bắt đầu hoạt động Timer", e);

return false; } } else { return super onOptionsitemSelected(item); } 3.2 Code Giao dien 4 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmins: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" android: orientation="vertical"> <androidx.appcompat.widget.Toolbar

android: id="@+id/toolbar"

android: layout_width="match_ parent"

android: layout _height="wrap content"

android: background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize" android: theme="?attr/actionBarTheme" /> <TabHost

android: layout_width="match_ parent"

android: layout _height="match_ parent"

android:id="@+id/tabHost"> <LinearLayout

android: layout_width="match_ parent"

android: layout _height="match_ parent"

android: orientation="vertical"> <TabWidget

android: id="@android:id/tabs"

android: layout_width="match parent"

android: layout _height="wrap content" />

<FrameLayout

android: id="@android:id/tabcontent"

android: layout_width="match parent"

android: layout _height="match_parent"> <LinearLayout

android:id="@tid/tabl"

android: layout_width="match_ parent"

Ngày đăng: 01/07/2024, 12:15

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w