개발/Android 46

[안드로이드] 팔레트 (palette) 총정리 - 3

2편에 이어서 이어서 작성하도록 할 것이다. 원래 위젯다음이 레이아웃인데 레이아웃은 다룰 내용이 많아서 별도로 빼기로 하고 그 다음 순서인 Containers에 대해서 알아보자. 4. Containers 컨테이너는 상당히 다룰 내용이 많다.... 휴 Spinner 여러개의 값 중 1개를 선택하기 위해 사용하는 안드로이드에서 제공해주는 기본 위젯 중의 하나이다. Radio Button도 여러개 중 1개를 선택하는 위젯인데, 위의 사진과 같이 밑에 선택지가 주르륵 뜬다는 점에서 Radio Button과 차이점을 보인다. RecyclerView 사용자가 관리하는 많은 수의 데이터 집합 (Date Set)을 개별 아이템 단위로 구성하여 스크롤이 가능한 컨테이너에 여러 개의 뷰를 담아서 화면에 출력하는 뷰그룹(V..

개발/Android 2022.02.07

[안드로이드] 팔레트 (palette) 총정리 - 2

1탄에 이어서 안드로이드 레이아웃에 쓰이는 팔레트 컴포넌트들을 알아보자! 3. Widgets View 액티비티 내에서 뷰를 설정한다. 뷰란 안드로이드 UI를 구성하는 모든 화면 구성요소이다. 뷰는 뷰를 포함할 수 있고,중첩적으로 사용 할 수 있다. 이때 뷰 중에서 눈에 보이는 것들은 위젯이라 부르고, 눈에 보이지 않는 것들은 레이아웃이라고 부른다. view의 자주 쓰이는 속성에는 id, layout_width, layout_height, background, visibility, padding, layout_margin 등이 있다. 레이아웃에 관한 자세한 설명은 다음 포스팅에서 진행할 예정이다. ImageView view 의 속성을 상속받아 이미지를 화면에 표시한다. WebView view의 속성을 상속..

개발/Android 2022.02.07

[안드로이드] 팔레트(palette) 정리 - 1

오늘은 안드로이드의 팔레트에 대해 정리할 것이다. 팔레트 메뉴에는 Common(자주 사용하는 컴포넌트), Text, Buttons, Widgets, Layout, Container, Googel 이 있다. 하나하나 차근차근 살펴보자 1. Text TextView 화면에 텍스트를 표시하는 기능 Plain Text 터치 시 화면에 표준적인 텍스트 키보드를 표시한다. 유저는 해당 컴포넌트에 텍스트를 입력할 수 있다. Password 터치 시 화면에 텍스트 키보드를 표시하나, 개인정보 보호를 위해 입력한 텍스트를 나타내지 않는다. 비밀번호를 입력할 때 주로 사용된다. PassWord(Numeric) 터치 시 화면에 숫자 키보드를 표시한다. 개인정보 보호를 위해 입력한 텍스트를 나타내지 않는다. 비밀번호를 입력할..

개발/Android 2022.02.07

[안드로이드] 4대 컴포넌트

안드로이드는 4대 컴포넌트라고 불리는 구성 요소들이 있다. 이 구성요소에 대해 알아보자. 앱 구성요소 앱 구성 요소는 안드로이드 앱의 필수적인 구성 요소이다. 각 구성 요소는 시스템이나 사용자가 앱에 들어올 수 있는 진입점이고 인텐트를 통해 상호작용을 한다. 앱 구성 요소는 네 가지 유형이 있다. Activity Service Broadcast Receiver Contents provider 위의 4가지에 대해 살펴보자. 1. 액티비티 (Activity) 액티비티는 사용자와 상호작용을 하기 위한 진입점이다. 한 앱이 다른 앱을 호출할 때 다른 앱 전체를 호출하는 것이 아니라 다른 앱의 액티비티를 호출한다. 따라서 다른 액티비티를 호출하면서 다양한 활동을 할수 있다. 액티비티는 UI 화면 하나를 나타낸다...

개발/Android 2022.02.06

[안드로이드] 매니페스트 (Manifest)

매니페스트 ( Manifest) 모든 앱 프로젝트는 프로젝트 Source Set 루트에 `AndroidManifest.xml` 파일이 있어야 한다. 안드로이드 개발자 문서를 보면 "매니페스트 파일은 Android 빌드 도구, Android 운영체제 및 Google Play에 앱에 관한 필수 정보를 설명합니다" 라고 적혀있다. 글로만 보면 정확히 매니페스트 파일이 어떤 파일인지 감이 오지 않는다. 해당 포스팅은 안드로이드 매니페스트의 컴포넌트와 함께 정확히 무엇을 하는 파일인지 살펴보는 시간을 가질 것이다. 매니페스트 파일에는 많은 정보를 담을 수 있지만. 다음 4가지를 꼭 선언해야한다. 앱의 패키지 이름 앱의 구성 요소 앱이 액세스하기 위해 필요한 권한 앱에 필요한 하드웨어 및 소프트웨어 기능 위 4가지..

개발/Android 2022.02.06

[안드로이드/Java] JSONArray 파싱하기

왤케 파싱부분은 항상 어려운지 모르겠다... 파싱만 2주정도 헤매다가 겨우겨우 ㅠㅠㅠ 성공 🥲 까먹기 전에 얼른 정리하려고 한다. 우선 나의 데이터는 {"code":0,"message":"success", "accounts":[{"data":"0x4dfc2340dd9b62fd02322dedfdaa5e7c49c3c14d"},{"data":"0xe9b5f4705a270325fa641b59131eda8b06dd12d2"},{"data":"0x59e1f747d19f3985c270b9773d74b91c912156ef"},{"data":"0x108b0cb87cd3e3d67e58dc6d2780f705fd145b35"},{"data":"0xfefd32130e10a2435096758f6ed2258f922dd81c"},{..

개발/Android 2021.09.16

[안드로이드] Activity 배경 투명으로 하기

안드로이드 개발을 하다가 Activity를 띄우는데 배경을 투명색으로 구현하고 싶어졌다. 그래서 여러가지 방법을 썼지만 해결이 안되다가 아래 방법으로 하니 바로 성공-❤️ 우선 src->main->res->values->style.xml로 들어간다. 안에 아래 코드를 집어넣는다. 나는 activity를 dialog형식으로 띄우기위해 테마를 Light.Dialog로 하였다. 위의 코드에서 true 가 있는데 true면 반투명 검정, false면 완전 투명색으로 적용된다. 나는 반투명 검정을 선택! 그 후에 Androidmanifest.xml로 가서 안에 아래 코드를 넣어준다. 마지막으로 투명색을 적용하고 싶은 레이아웃에 아래 background를 적용하면 된다. android:background="@and..

개발/Android 2021.09.16

[안드로이드] Attempt to write to null array 에러

개발을 하던 도중 Attempt to write to null array라는 에러를 발견하게 되었다. for (int k = 0; k < jsonArray.length(); k++) { JsonObject object = (JsonObject) jsonArray1.get(k); String data = object.get("data").getAsString(); accounts[k]=data; } 분명 data에는 값이 잘나오는데 자꾸 account[k]=data;에서 null이 나온다는 것...! 그래서 구글링을 해보았다. 그랬더니 초기화를 안해주어서 나오는 실ㅅ..ㅜㅜ..... 여전히 나는 개초보인가보다 ^^ public String[] accounts = new String[10]; 위와 같이 해주..

개발/Android 2021.09.14

[안드로이드] Retrofit을 이용하여 node.js 통신하기 (2)

1탄에 이어서 작성하도록 하겠음.. 이번에는 안드로이드가 아닌 node.js의 코드를 살펴볼 것이다. 1. retrofit.js를 작성한다. // 5. 투표권을 행사합니다. router.get('/setVote', function(req, res){ var placeid = parseInt(req.param('placeid')); var candidateid = parseInt(req.param('candidateid')); var UserNumber = parseInt(req.param('UserNumber')); blockFunc.getCheckVoted(placeid, UserNumber, function(err, resd){ if(!resd){ blockFunc.setVote(placeid, ca..

개발/Android 2021.09.05

[안드로이드] Retrofit을 이용하여 node.js 통신하기 (1)

졸업작품을 하면서 초반에는 volley를 이용해서 통신을 하였으나 Retrofit이라는 것을 알게 되었다. Volley보다는 Retrofit을 많이 이용한다고 하여 한번 사용해보고 싶었다. 나는 투표 애플리케이션을 제작하고 있었기에, 투표 버튼을 누르면 정보(placeid, candidateid, UserNumber)가 넘어가게끔 구현하였다. 1. 우선 '투표하기' 버튼을 만들어 주었다. activity_vote.xml 2. gradle에 retrofit을 추가 //retrofit implementation 'com.squareup.retrofit2:retrofit:2.5.0' implementation 'com.squareup.retrofit2:converter-gson:2.5.0' implementa..

개발/Android 2021.09.04