Sponsored By


















애플리케이션의 꽃(?) 부분화면/ 부분레이아웃 에 대한 방법임.





00. 메인 엑티비티에 부분레이아웃을 띄울 버튼을 만든다.







01. 부분레이아웃이 나올 레이아웃을 만든다.(나는 LinearLayout을 사용했다.) 

    Text를 눌러 아이디를 부여하자.






02. android:id="@+id/mainLayout2" 라고 id를 지정하자.






03. 왼쪽 트리에서 레이아웃위에 오른쪽버튼 - 뉴 - XML - LayoutXML을 눌러 새로운 레이아웃을 만들어줌.






04. 이름을 아무거나 지어준다. (sub_layout으로 지어줬다.)






05. 잘 들어왔는 것을 알 수 있다. 텍스트를 눌러 코드를 수정하자.






06. LinearLayout은 방향성이 필요하므로 android:orientation="vertical" 을 부여하자.






07. sub_Layout에 구동시킬 버튼 따위를 넣어보자. 먼저, 텍스트뷰를 넣어보자.






08. 아무글씨나 써보자.( 부분화면/ #ffff0000/ 34dp 를 했다.)






09. 버튼을 만들어보자.






10. Toast띄우기 라고 이름을 주고 나중에 Toast함수를 넣자.






11. CheckBox도 함 넣어보자.






12. 다 들어간 것을 확인했으면 메인엑티비티XML을 눌르자.






13. onClick에 onClick01로 부여하고 script로 가서 코드를 연결해보자.






14. 먼저, mainlayout2에 부분레이아웃이 나오게 연결해보자. 코드는 아래와 같다.

   public void onClick01(View v) {

        LinearLayout mainlayout2 = (LinearLayout) findViewById(R.id.mainlayout2);


        LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        inflater.inflate(R.layout.sub_layout, mainlayout2, true);

}







15. 구동시켜보자.






16. 잘 나오는 것을 확인 할 수 있다. 하지만, 버튼에 메소드를 구현하지않아서 버튼작동은 되지 않는다.








17. 버튼id를 이용해 버튼에 메소드를 넣어서 구동시키자. 전체 코드는 아래와 같다.

    public void onClick01(View v) {

        final LinearLayout mainlayout2 = (LinearLayout) findViewById(R.id.mainlayout2);


        LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        inflater.inflate(R.layout.sub_layout, mainlayout2, true);


        Button button2 = (Button) mainlayout2.findViewById(R.id.button2);

        button2.setOnClickListener(new View.OnClickListener(){


            @Override

            public void onClick(View v) {

                Toast.makeText(getApplicationContext(),"Toast버튼이 눌렸습니다.", Toast.LENGTH_SHORT).show();

            }

        });


        Button button3 = (Button) mainlayout2.findViewById(R.id.button3);

        button3.setOnClickListener(new View.OnClickListener(){


            @Override

            public void onClick(View v) {

                finish();

            }

        });

    }







18. 구동시켜보자.






19. 구현이 정상적으로 되는것을 확인 할 수 있다.
 



Sponsored By















+ Recent posts