xml로 레이아웃을 구성하면 쉽고 눈에 잘 확인할 수 있는 장점이 있다 다만 고정적으로 필요한 요소들만 만들어두어야 한다 그렇다면 필요에 의해 만들어야 하는 요소들은 자바 코드로 프로그래밍 해야 한다 LinearLayout linearLayout = new LinearLayout(getContext()); linearLayout.serOrientation(LinearLayout.HORIZONTAL); LinearLayout.LayoutParams layoutparams = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTNETN); button.setLayoutPa..
액티비티에서 특정 작업을 수행한 후에 프래그먼트를 생성하기를 원할 때가 있다 하지만 레이아웃에서 프래그먼트의 id를 지정하기 때문에 바로 프래그먼트를 만든다 이렇게 되면 프래그먼트에 null 값이 전달되어 오류로 인한 강제종료 문제가 발생할 수 있다 이 문제는 간단하게 해결이 가능하다 액티비티에서 Fragment를 바로 만들도록 레이아웃에서 Fragment를 넣을 것이 아니라 FrameLayout을 넣으면 해결된다 android:name="com.example.application.MyFragment"를 통해 프래그먼트의 onCreateView() 함수를 호출하기 때문에 생기는 문제이다 FrameLayout으로 수정하면 프래그먼트의 onCreateView()를 호출하지 않기 때문에 문제가 생기지 않는다 ..
파이어베이스의 Timestamp는 연도는 1900년을 기준으로 누적된 값을 이용하고 월은 0 ~ 11의 값을 이용한다 따라서 Timestamp를 이용한 쿼리 작성은 연도에서 1900을 뺀 값을 이용해야 한다 public void searchData(int year, int month, int dayOfMonth) { db.collection("books") .whereLessThan("timestamp", new Timestamp(new Date(year - 1900, month, dayOfMonth + 1))) .whereGreaterThanOrEqualTo("timestamp", new Timestamp(new Date(year - 1900, month, dayOfMonth))) .get() .add..
액티비티에서 프래그먼트를 생성할 때 값을 전달해야 할 때가 있다 간단하게 생성자를 이용해서 전달하려고 했지만 안드로이드에서 이러한 방식이 지원되지 않는다 따라서 Bundle 객체를 이용해서 전달하는 방법을 이용한다 MyFragment myFragment = new MyFragment(); Bundle bundle = new bundle(1); // 파라미터의 숫자는 전달하려는 값의 갯수 bundle.putString("key", "value"); myFragment.setArgument(bundle); 이와 같이 코드를 입력하면 액티비티에서 프래그먼트로 값이 전달된다 이 값을 이용하기 위해서 프래그먼트에선 간단한 코드 한 줄로 얻어낼 수 있다 String str; Bundle bundle = getArg..
안드로이드 어플에서 비밀번호를 관리해야 할 일이 있어 해싱 함수를 적용했다 java에서도 같은 방식으로 이용할 수 있다 public String hashing(String str) { String result; try { MessageDigest sh = MessageDigest.getInstance("SHA-256"); sh.update(str.getBytes()); byte byteData[] = sh.digest(); StringBuffer sb = new StringBuffer(); for (int i = 0; i < byteData.length; i++) { sb.append(Integer.toString(byteData[i] & 0xff + 0x100, 16).substring(1)); } r..
- Total
- Today
- Yesterday
- Firebase
- androidx
- 액티비티
- 안드로이드 레이아웃
- eggtimer
- intent
- recyclrView
- calendarView
- firestore
- RecyclerView Swipe
- 파이어베이스
- 스튜디오
- 안드로이드
- round border
- 안드로이드 스튜디오
- 프래그먼트
- 에그타이머
- 안드로이드 여백
- wrap_content
- RecyclerView 여백
- activity
- java
- RecyclerView padding
- layout
- 파이어스토어
- Android Studio
- 레이아웃
- Alfred
- 뒤로가기
- android
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |