모바일/Android_Java(100)
-
app:mutldexDebug 에러
app:mutldexDebug 에러 gradle 폴더에 아래와 같이 코드를 추가한다 android{ defaultconfig{ ... multiDexEnabled : true } }
2021.06.02 -
[Android] maven jcenter vs mavenCentral
jCenter에 안드로이드 라이브러리 배포하기 Android Library GearSlider를 만든 후 jcenter에 배포한 경험을 공유하기 위해 글을 작성합니다. 구글에 검색하여 나온 블로그 글을 참조했는데 중간에 막히는 부분이 있어서 다른 배포도구를 활용했습니다. 이 문서의 최종 목표는 1: dependencies { 2: compile '나만의.안드로이드.라이브러리' 3: } 위와 같이 build.gradle 파일에 작성함으로써 자신의 라이브러리를 다른 사람들과 쉽게 공유할 수 있게 만드는 것에 있습니다. 이 글을 읽기 전에 Android 공식 홈페이지의 글을 먼저 읽어 보시길 바랍니다. 단 한줄만으로 라이브러리를 가져올수 있다는 것은 굉장히 유용합니다. 그렇다면 우리는 어디에 라..
2021.06.02 -
[Android] CustomView attr 속성에 다중 값(multi value) 설정 방법
CustomView attr 속성에 다중 값(multi value) 설정 방법 CustomTopNavigation 속성중에 뒤로가기만 보여줄지, Close 버튼을 보여줄지 설정을 할 수 있는 style attr이 있다 attr 위와같은 attr이 있을때 커스텀 뷰 설정하고있는 xml 뒤로가기, 닫기버튼을 같이 보여주고 싶으면 위와 같이 사용한다 자바코드 if (null != attrs) { // 안드로이드 기본 스키마 어트리뷰트가 설정된 경우 (문구만 적용한다) int textResId = attrs.getAttributeResourceValue(ANDROID_SCHEMA, "text", 0); String text = ""; if (textResId == 0) { text = attrs.getAttri..
2021.05.26 -
[Android] 프래그먼트 데이터 공유(Not MVVM)2
[Android] 프래그먼트 데이터 공유(Not MVVM)2 Activity 최상위 프래그먼트 or 액티비티에서 리스너 인터페이스를 작성한다 공유할 데이터들을 정의한다. 각각의 프래그먼트에서 해당 함수들을 호출 할 때 할 행위들을 정의한다. public class MyActivity extends Activity { private final String TAG = "MyActivity"; private ApplyData applyData = new ApplyData(); // 신청 데이터 private QueryData queryData = new QueryData(); // 조회 데이터 public interface MyListener { int STEP_1 = 0; int STEP_2 = 1; int..
2021.05.25 -
[Android] button onclick in LinearLayout not working
button onclick in LinearLayout not working 리니어 레이아웃 안에 버튼이 1개 있었다. 굳이 버튼에 onClick리스너 달 필요가 있을까? 해서 리니어 레이아웃에 리스너를 달았는데 리스너가 작동하지 않는 현상이 발생했다 해결은 버튼에 android:clickable="true" 위 코드를 추가하는 것이었는데 버튼이라는것 자체가 클릭을 위한 view 이기 때문에, 클릭에 대해 이벤트를 가져가면서 return true를 반환 한다. 그래서 리니어 레이아웃의 onTouchListener, onTouchEvent를 호출하지 않는것이다
2021.05.25 -
[Java] JAVA String 메소드중 Replace로 괄호()와 점.을 치환하려 할때
String AA = "(주)티스토리"; String 메소드 중에서 substring의 경우에는 괄호를 잘찾아간다. 예시는 아래와 같다. ex) AA.substring(0,1).equals("(") 그러나 replace의 경우에는 괄호에 대해서 처리가 되지 않는다. 그 이유는 String의 replaceAll 메소드가 내부적으로 regular expression을 사용하기 때문 점을 넣었을경우 모든 글자를 치환해버리는것도 위와 같은 이유이다. 문자라는 표시를 해줘야 하는데 \\를 붙여주면 된다. 예시는 아래와 같다. ex) AA.replace("\\(", "BB"); AA.replace("\\)", "BB"); AA.replace("\\.", "BB"); regex완벽정리 한번해야겠다
2021.05.20