목록분류 전체보기 (303)
군침이 싹 도는 코딩
public class MainActivity extends AppCompatActivity { TextView txtTimer; TextView txtCount; Button button; CountDownTimer timer; int count = 0 ; // flag 역활을 하는 변수 boolean isFinished = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); txtTimer = findViewById(R.id.txtTimer); txtCount = findViewById(R.id..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/GIg78/btrXml1bmRP/noBtns4FBKkg4RJNeUpQ01/img.png)
# 프로그레스바란 진행상황도를 표시해준다 해당 앱은 퀴즈 앱으로 총 10문제가 있고 프로그레스바도 10개이다 # 만드는 법은 액티비티 메인에서 위젯 > 프로그레스바로 만들수 있다 바의 갯수를 조절하는것은 어트리뷰트에 max를 검색해서 갯수를 적어주면 된다 // 화면의 뷰 연결용 멤버변수 ProgressBar progressBar; int currentQuizIndex = 0; // 화면의 뷰 연결 progressBar = findViewById(R.id.progressBar); // 프로그래스바를 표시하자 progressBar.setProgress(currentQuizIndex+1); # 코드를 작성할때 멤버 변수를 만들고 화면의 뷰를 연결하고 프로그래스바를 1칸씩 증가하게 하면 된다
String strYear = editYear.getText().toString().trim(); int year = Integer.valueOf(strYear).intValue(); # 에디트 텍스트에서 데이터를 문자열로 바꿔서 숫자로 바꾸는 법
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oE4vA/btrXimZUPzS/9LIMOmMsvuUKVg5kX8pAY1/img.png)
# 에뮬레이터를 사용하다보면 뜨는 System UI isn't responding 라고 에러가 뜬다 이것은 컴퓨터의 하드웨어 성능 문제가 가장 큰 원인이 된다 이 방법을 사용 시 Emulator에 저장한 설정, 데이터가 전부 삭제되니 주의 1. Android Emulator 종료 특별히 따로 설정을 하지 않았다면 에뮬레이터에 대한 정보는 아래 경로에 저장된다. 2. 아래 경로에 가서 파일 삭제 C드라이브 -> 사용자 or User -> "현재 사용자명" 폴더 -> .android -> avd -> 자신이 현재 사용 중인 Emulator 폴더-> "userdata-qemu.img" 이미지 파일 삭제 3. Emulator 재실행 새로운 앱을 계속 만들어서 실행하다 보면 데이터가 에뮬 내부에 계속 쌓이기 때문..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bkGa09/btrXl0Imjxu/4kkSy7ROMw01Pb7ZjjrEX1/img.png)
private void showAlertDialog() { // 객체 생성 코드 AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); // 이 다이얼로그의 외곽 부분을 눌렀을때 사라지지 않도록 하는 코드 builder.setCancelable(false); // 다이얼의 타이틀 부분 builder.setTitle("게임 오버"); // 다이얼에 메세지 부분 builder.setMessage("맞춘 문제는 "+resultcnt+"개 입니다. 확인을 누르시면 퀴즈가 다시 시작됩니다"); // Negative 버튼을 눌렀을때 동작 builder.setNegativeButton("종료", new DialogInterface.OnCli..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bYWhh2/btrXiOgBU2m/Fb6aQsKCpE96HupRjPVaQK/img.png)
# TextView 의 setText 함수는 안에 문자열만 들어와야한다 위 사진을 보면 double이기때문에 에러가 났다 # 디버깅하는 방법은 간단하다 앞에 "" + 를 붙여주면 된다
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c0ZPFi/btrXbrA4bJY/qJAg9l2BlulJcDp57kApO0/img.png)
# 리니어 레이아웃은 두 종류가 있다 호라이즌탈과 버티컬인데 호라이즌탈은 가로로 쭉 나열되고 버티컬을 세로로 나열이 된다 위 사진을 보면 Component Tree 두번째에 리니어가 버티컬로 되어있다 이로인해 1. 이미지뷰와 텍스트뷰 두개를 넣은 리니어 ( 빨간 네모 ) 2. 텍스트뷰 ( 파란 네모 ) 3. 이미지뷰 3개를 넣고 있는 리니어 ( 초록 네모 ) 로 세로로 나열이 된것을 볼수있다 제일 아래 리니어 호라이즌탈을 보면 이미지뷰 3개를 넣었더니 가로로 나열 되있는것을 볼 수 있다 이처럼 호라이즌 ( 가로 ) 버티컬 ( 세로 ) 이다