- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코드로 서버 재실행
- 말줌임 CSS
- MFC
- springboot 재가동
- kill -9
- rn
- Activity 전체화면
- 파티션 빠른 삭제
- CSS
- Back 키 클릭 감지
- vc++
- view 획득
- DB 계정생성
- 텍스트컬러
- 가변영역 스크롤
- MariaDB
- sql exception
- 터치좌표 view
- SQL 첫날
- MySQL
- pid 찾아 kill
- 스크롤적용
- c언어
- mybatis exception
- springboot
- SQL 마지막날
- reactnative
- 피쉬랜드
- CentOS
- ffmpeg
목록Java, Android (13)
개발은 하는건가..
각 뷰 컨트롤 마다 개별적으로 Listener 를 설정하지 않고 화면에서 특정 위치를 터치 시해당 위치에 존재하는 View 를 얻어야 할 경우 아래 코드를 이용하여 얻을 수 있다. private Rect mViewRect = new Rect(); public View getViewOfPointer(ViewGroup rootView, final int x, final int y) { for (int i = 0; i 엑티비티의 dispatchTouchEvent(MotionEvent ev) 를 오버라이드 하여 터치 좌표를 획득하여 getViewPointer 를 통해 View 를 획득한다.아래 코드는 터치한 위치의 View 가 EditText 가 아닐 경우 자판을 숨기도록 하는 코드이다.@O..
Activity onCreate() 시 아래와 같이 코드를 추가한다. back 키에 대한 콜백을 생성하고 getOnBackPressedDispatcher().addCallback() 를 통해 해당 콜백을 추가하면 back 키를 누르게되면 handleOnBackPress() 콜백이 호출된다. OnBackPressedCallback callback = new OnBackPressedCallback(true) { @Override public void handleOnBackPressed() { onAppExit(); } }; getOnBackPressedDispatcher().addCallback(this, callback);
Activity 또는 Dialog 클래스의 onCreate() 에서 아래 코드를 추가하여 Back, Home UI 버튼 및 Indicator 영역을 모두 채우는 Activity 를 생성한다. Back, Home 버튼 UI 가 아예 없어지는 것은 아니고 하단 쓸어 올리기 제스처를 통해 올라오게 된다. requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); //enable full screen // 시스템 바 숨기기 getWindow().getDecorView().setSystemUiV..
설정 시간 이후 깨어나서 필요한 동작을 수행하도록 한다. 요즘 추세는 WAKEUP 을 하지 않고 WorkManager 를 이용하라고는 하지만 여전히 잘 동작하고 옛날 방식이 더 편한 감도 있다. AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); Intent newIntent = new Intent(Constants.DELAYED_ALARM_WAKE_UP); newIntent.setPackage(getPackageName()); PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, newIntent, PendingIntent..
// Manifest Activity 의 속성 추가 // 가로 모드 setRequestedOrientation(Build.VERSION.SDK_INT < 9 ? ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE : ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE); // 세로 모드 setRequestedOrientation(Build.VERSION.SDK_INT < 9 ? ActivityInfo.SCREEN_ORIENTATION_PORTRAIT : ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
안드로이드 P 이상에서는 전체 화면 시 다음과 같이 Activity 의 window 속성을 설정하여 전체화면 시 노치 영역까지 가득 채우게 해준다. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { Window wnd = getWindow(); if (wnd != null) { wnd.getAttributes().layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES; } }
아래 코드 처럼 2개의 뷰를 시간차를 두고 에니메이션이 start 되는 상황에서 다른 activity 로 이동했다가 복귀 시 2개의 뷰 에니메이션이 시간차를 두지 않고 겹쳐서 에니메이션되는 현상 발생. 뷰를 Gone 시키는 코드도 안먹고 에니메이션 cancel 도 안되고 그랬으나 구글링 해보니 alpha 값을 0 으로 설정하면 사라진다는 글을 보고 적용해봤더니 정말 사라짐. @.@ void onResume() { ImageView iv_o2Circle = findViewById(R.id.iv_o2Circle); if (iv_o2Circle != null) { setViewAnimation(R.anim.ani_fade, iv_o2Circle); final ImageView iv_o2Circle2nd = f..
대상 Listview 에 아래 속성을 추가해준다. Divider 를 없에더라도 dividerHeight 속성은 작동하므로 아이템간의 간격을 조정이 가능하다. android:divider="@null" android:dividerHeight="15dp"
Drawable 에 xml 을 생성하고 다음과 같이 이미지와 duration 을 지정해준다. 만들어진 drawable xml 은 ImageView 에 설정한다.
DB 에 이미지 파일이나 바이너리 데이터가 저장된 경우 읽어오는 방법이다. Connection conn = DriverManager.getConnection(url, id, pwd); boolean result = false; String sql = "SELECT binData,binDataSize FROM firmware WHERE pkey=?"; PreparedStatement psmt = conn.prepareStatement(sql); psmt.setString(1, key); ResultSet rs = psmt.executeQuery(); if (rs.next()) { Blob blob = rs.getBlob("binData"); int binDataSize = rs.getInt("binData..
안드로이드에서 MediaRecorder 를 이용하여 카메라 영상을 동영상 파일로 저장하는 것이 겁나게 간단하다~ 설명이 필요 없을 듯... 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 ..
소스 Url : https://github.com/ankushsachdeva/emojicon 대상 디바이스 버젼이 4.2 이고 업데이트도 안되는 디바이스다 보니 컬러 이모지 출력이 지원이 않되어 찾다 찾다 보니 또 누군가 친절하게 영특한 방법으로 잘 맹글어 놨길래 잘 가져다 썼다.. DynamicDrawableSpan 을 통해서 Edit 나 TextView 에 중간 중간 drawable 를 삽입하여 사용하는 방식으로 구현되있다. 사용법은 간단하다 아래와 같이 레이아웃 xml 에 써주기만 하면 된다. 1234567891011121314 cs 지금 시중 휴대폰에서 이모지는 2500개는 기본 내장되있는거 같은데 여기는 1300개 정도 이모지들이 drawable-nodpi 폴더에 png 파일로 포함되있으니 아이..
Gif 에서 Bitmap 추출이 필요할 때 BitmapFactory 로는 10~30MB 에 달하는 에니메이션 GIF 파일은 Decoding 이 되지 않았습니다.물론 Glide 같은 라이브러리 써도 됩니다만 그건 상황에 따라 다르니.. 암튼 누군가 친절하게 만들어논 GifDecoder 클래스를 이용해서 아래와 같이 했더니 Bitmap 이 잘 추출되었습니다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344private Bitmap getGifPreviewFrame(File f) { if (f == null || f.exists() == false || f.length() 0) { gd.advance(); bmp =..