Author Archives: itpsolver

이클립스에서 메이븐(Maven) 사용시 인증서 에러로 인해 artifact 들이 다운로드 되지 않을 경우, 미러(mirror)서버로 우회한 케이스

By | 8월 16, 2017

(1) 회사 인터넷망에서 이클립스-메이븐 사용을 하려는데 아래와 같은 에러가 발생하였다. Could not transfer artifact org.apache.maven.archetypes:maven-archetype-quickstart:pom:1.1 from/to central (https://repo.maven.apache.org/maven2): sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target   (2) 검색을 해 보니, 회사 인증서 같은 것을 jdk에 import 해야 한다고 하는데, 잘 모르겠고 너무나 귀찮은 작업…   (3) 그래서… Read More »

[펌글] 해밍 거리(Hamming Distance)

By | 8월 16, 2017

– 출처: http://blog.naver.com/yagd_mirage/10042944461 –   정보 이론에서, 해밍 거리(해밍距離 , Hamming distance)는 같은 길이를 가진 두 개의 문자열에서 같은 위치에 있지만 서로 다른 문자의 개수이다. 즉, 한 문자열을 다른 문자열로 바꾸기 위해서 몇글자를 바꾸어야 하는지를 나타낸 것이다. 리처드 해밍이 제안했다. 컴퓨터 통신등에서 문자열의 전송 도중 몇 글자에서 오류가 났나를 측정하는 방법 중 하나이다. ‘1011101’과 ‘1001001’사이의 해밍 거리는 2이다. (1011101,… Read More »

[Android] ScrollView 안에 ConstraintLayout 을 넣고, 그 안에 TableLayout을 넣은 샘플

By | 12월 29, 2020

  <ScrollView xmlns:android=”http://schemas.android.com/apk/res/android” xmlns:app=”http://schemas.android.com/apk/res-auto” xmlns:tools=”http://schemas.android.com/tools” android:layout_height=”fill_parent” android:layout_width=”fill_parent” > <android.support.constraint.ConstraintLayout xmlns:android=”http://schemas.android.com/apk/res/android” xmlns:app=”http://schemas.android.com/apk/res-auto” xmlns:tools=”http://schemas.android.com/tools” android:tag=”buttonParent” android:layout_width=”match_parent” android:layout_height=”match_parent” tools:layout_editor_absoluteY=”81dp” tools:layout_editor_absoluteX=”0dp”> <!– ConstraintLayout 안에 TableLayout을 넣어 보았다 –> <TableLayout android:id=”@+id/tableLayout1″ android:layout_width=”0dp” android:layout_height=”wrap_content” app:layout_constraintLeft_toLeftOf=”parent” app:layout_constraintRight_toRightOf=”parent” app:layout_constraintTop_toTopOf=”parent” android:layout_marginTop=”10dp”> <TableRow android:id=”@+id/tableRow1″ android:layout_width=”match_parent” android:layout_height=”match_parent” android:padding=”5dip”> <TextView style=”@style/FormLabel02″ android:layout_width=”0dp” android:layout_height=”match_parent” android:layout_gravity=”center_vertical” android:layout_weight=”3″ android:gravity=”center_vertical|end” android:text=”호출 서버 : ” /> <RadioGroup xmlns:android=”http://schemas.android.com/apk/res/android” android:id=”@+id/rgSvr” android:layout_width=”0dp” android:layout_height=”wrap_content” android:orientation=”horizontal”… Read More »

[Android] 액션바에 뒤로가기 화살표 표시 및 뒤로가기 기능 추가

By | 12월 29, 2020

*  정의부 (MainActivity > Navigation Drawer 생성) protected void onCreate(Bundle savedInstanceState) { … Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); // actionbar 좌측에 뒤로가기 화살표 표시 DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); drawerToggle = new ActionBarDrawerToggle(this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); drawer.setDrawerListener(drawerToggle); drawerToggle.syncState(); NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); navigationView.setNavigationItemSelectedListener(this); … }   *  정의부 (MainActivity > 뒤로가기… Read More »

[Android] 뒤로가기 버튼 두 번 눌렀을 때 앱 종료하기

By | 12월 29, 2020

인터넷에 널린 유사한 글들을 살짝 수정함.   * 뒤로가기 핸들러 정의 package and.bruce.com.handler; import android.app.Activity; import android.content.pm.ApplicationInfo; import android.support.v4.app.ActivityCompat; import android.widget.Toast; import and.bruce.com.App; /** * 뒤로가기 버튼을 두 번 눌렀을 때 앱을 종료하게 하는 핸들러 */ public class BackPressCloseHandler { private long backKeyPressedTime = 0; private static final long checkInterval = 2000; private Toast toast;… Read More »

[Android] View(혹은 Layout) 내의 요소(ex: EditText)들을 순회(loop)하면서 각 요소(element)의 id를 key로 하여 SharedPreferences 에 값을 저장하는 샘플코드

By | 12월 29, 2020

* 정의부 /** * view 하위의 특정 TableLayout의 TableRow를 순회하면서 EditText를 찾고, * 각 EditText의 id 문자열로 SharedPreferences(혹은 Constants)를 조회한 결과값을 EditText에 채워 넣는다. * * @param rootView * @param tableLayoutId */ public static void fillSavedDataToForm(View rootView, int tableLayoutId) { TableLayout tableLayout = (TableLayout) rootView.findViewById(tableLayoutId); TableRow tableRow; View tmpView; EditText et; String id, key, val;… Read More »

[Java] 제네릭(Generic) 관련 소스 샘플

By | 8월 1, 2017

  /** * Fragment를 신규 생성하여 리턴한다. (동적 생성) * * – 추가기능으로 액션바의 타이틀을 arguments 에 넣어준다. * * @param clazz * @param <T> * @return */ public static <T extends BaseFragment> T newFragment(Class<T> clazz){ T ret = null; try { ret = clazz.newInstance(); } catch (java.lang.InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e)… Read More »

[링크] 이클립스 "Cannot change version of project facet Danymic Web Module to 3.0" 오류 해결

By | 7월 31, 2017

  http://tyboss.tistory.com/entry/Maven   *  위의 링크로 문제를 해결했지만, web.xml 의 정의부는 위의 링크를 따르지 않고 아래의 것으로 했다. <web-app xmlns=”http://java.sun.com/xml/ns/javaee” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd” version=”3.0″> (3.1의 경우, 3.0을 3.1로 바꿔주면 된다)    

[Android] SnackBar 샘플 코드

By | 1월 18, 2021

말보다는 코딩! DrawerLayout layout = (DrawerLayout)activity.findViewById(R.id.drawer_layout); Snackbar.make(layout, message, Snackbar.LENGTH_INDEFINITE) .setAction(“설정”, new View.OnClickListener() { @Override public void onClick(View v) { // do something } }).show();    

[Android] Navigatin Drawer 내 각 메뉴간 구분선 나누기

By | 1월 18, 2021

말보다는 코드로! <?xml version=”1.0″ encoding=”utf-8″?> <menu xmlns:android=”http://schemas.android.com/apk/res/android”> <!– 메뉴간 구분선을 위해서 group을 지어 주었음 –> <group android:id=”@+id/menu_01″ android:checkableBehavior=”none”> <item android:id=”@+id/nav_authNew” android:title=”메뉴 1″/> <item android:id=”@+id/nav_authOldApp” android:title=”메뉴 2″ /> <item android:id=”@+id/nav_authOldWeb” android:title=”메뉴 3″ /> </group> <group android:id=”@+id/menu_02″ android:checkableBehavior=”none”> <item android:id=”@+id/nav_APICall” android:title=”메뉴 4″ /> </group> <group android:id=”@+id/menu_03″ android:checkableBehavior=”none”> <item android:id=”@+id/nav_setting” android:title=”메뉴 5″ /> </group> <group android:id=”@+id/menu_04″ android:checkableBehavior=”none”> <item… Read More »

[Android] Navigation Drawer 내의 이미지에 이벤트 바인딩 하기

By | 1월 18, 2021

제목 그대로임   /** * 레프트메뉴의 로고이미지에 클릭 이벤트 바인딩 (ButterKnife로 구현하기에 어려워서 원래 방법대로 함) */ private void setNavLogoOnClickListener() { NavigationView navView = (NavigationView)findViewById(R.id.nav_view); View headerView = navView.getHeaderView(0); ImageView logo = (ImageView) headerView.findViewById(R.id.logo_in_nav); logo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ((DrawerLayout) findViewById(R.id.drawer_layout)).closeDrawer(GravityCompat.START); // 레프트메뉴 닫기 goMain(); // 메인페이지로 } }); } ※… Read More »

Android DialogFragment 크기 조정 하려다가 잘 안돼서 흐지부지된 코드

By | 1월 18, 2021

제목 그대로임. 왜 잘 안됐는지는 주석에 표시함. public class APICallResultFragment extends DialogFragment { //===================================== Fragment Lifecycle Callbacks – start ===================================== /** * Only for DialogFragment * * @param savedInstanceState * @return */ @Override public Dialog onCreateDialog(Bundle savedInstanceState) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); LayoutInflater inflater = getActivity().getLayoutInflater(); View view = inflater.inflate(R.layout.fragment_apicall_result, null); builder.setView(view) .setNegativeButton(“닫기”, new… Read More »

Gson 초기화 코드

By | 7월 28, 2017

Android 작업을 하는데 REST 통신시 파서로 Gson을 많이들 사용하는 것 같다.  기본설정으로 사용하는데 불편한 점이 좀 있어서 초기화 코드를 하나 기록해 본다. /** * Gson 파서 초기화 * * – json beautify 처리 포함 * – 변환후 일부 특수문자들이 유니코드화 되는 것을 막기 위해 (Base64의 == 라던가..) html ecsape 처리도 넣어줌. */ public static final… Read More »