IOS를 사랑하는 AOS 개발자
[Android] 안드로이드 시간, 날짜 특집1 ( Stopwatch ) 본문
반응형
SMALL
( 🤗 유튜브 오시면 나름 설명도 해줘요 🤗 )
그 중 첫번째
버튼 A 클릭 후 버튼 B 를 누르기 전까지의 초단위 시간측정을 해볼거에요!!!!
마치 스톱워치 같은 개념인거죠 🙂
언제나 저는 뷰부터 그립니다!!!!
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:orientation="vertical"
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">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
>
<TextView
android:id="@+id/tv_text"
android:layout_width="match_parent"
android:layout_height="60dp"
android:textSize="20dp"
android:text="START버튼을 눌러주세요"
android:gravity="center"
/>
<Chronometer
android:id="@+id/chronometer"
android:layout_width="match_parent"
android:layout_height="60dp"
android:textSize="20dp"
android:gravity="center"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<LinearLayout
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
>
<Button
android:id="@+id/btn_start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="START"/>
</LinearLayout>
<LinearLayout
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
>
<Button
android:id="@+id/btn_finish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="finish"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
⚡️ 참고로 저는 뷰를 중요하게 생각하는 편이에요!!! 기능도 기능이지만 예쁘면 더 좋잖아요 😉
자 이제 코드로 넘어가야겠죠?
MainActivity
import android.graphics.Color;
import android.os.Bundle;
import android.os.SystemClock;
import android.view.View;
import android.widget.Button;
import android.widget.Chronometer;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
// 위젯 전역변수
TextView tv_text;
Button btn_start, btn_finish;
Chronometer chronometer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// xml 과 연결
tv_text = findViewById(R.id.tv_text);
chronometer = findViewById(R.id.chronometer);
btn_start = findViewById(R.id.btn_start);
btn_finish = findViewById(R.id.btn_finish);
// start 버튼 클릭 이벤트
btn_start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
chronometer.setBase(SystemClock.elapsedRealtime());
chronometer.start();
tv_text.setTextColor(Color.BLUE);
tv_text.setText("시간 측정중...");
}
});
// finish 버튼 클릭 이벤트
btn_finish.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
chronometer.stop();
tv_text.setTextColor(Color.RED);
tv_text.setText("FINISH !!!");
}
});
}
}
🤭 뭔가 xml 코드길이보다 java 길이가 더 짧은 기분..........? 하핫!
그!래!서! 아주아주 초 간단 스톱워치가 된다~~ 이말인거죠 ㅎㅎ
이렇게 해서 응용할 수 있는게 엄청 많을거에요 😚
구현 영상 갑시다!
이로써 아주 간단한 스톱워치 기능 끝입니다!
감사합니다 :)
반응형
LIST
'Android ( JAVA ) > 개발' 카테고리의 다른 글
[Android] 안드로이드 시간, 날짜 특집3 ( TimePicker ) (0) | 2021.12.26 |
---|---|
[Android] 안드로이드 시간, 날짜 특집2 ( Calendar ) (0) | 2021.12.26 |
[Android] Activity 생명주기( 액티비티 이동 ) (0) | 2021.12.21 |
[Android] SlidingDrawer 간단 사용법 (0) | 2021.12.21 |
[Android] RadioButton 간단 사용법(feat. strings.xml) (0) | 2021.12.21 |
Comments