blog.naver.com/getinthere/222025997436

 

flex 수업자료

라이브 서버 동작 버그 해결법​index.htmlindex.cssbasic.css​

blog.naver.com

 

 

index.css

 

 

 

 

 

 

flex-direction 기본은 row

 

 

 

 

basic.css

 

 

index.css

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  justify-content: 정렬 방향대로 

  align-items: 정렬의 수직방향대로 세팅

 

부모의 높이만큼 다 차지하는 것을 스트레치 라고한다

아래가 디폴트

 

 

 

 

 

 

 

 

 

 

 

 

반응

 

래핑을 걸면 자기 크기에 따라서 반응한다

 

 

 

 

 flex0 1 auto;

0자리는 그로우 (비율정하기 + 늘어날때 비율) 0이면 자동으로 안늘어남

1자리는 쉬링크 (비율정하기 + 줄어들때 비율) 0이면 자동으로 안줄어듬

auto는 기본크기

 

 

 

 

 

 

'Web > ReactJS' 카테고리의 다른 글

props 개념  (0) 2020.07.14
리액트 컴포넌트 구성하기  (0) 2020.07.10
리액트 화면 출력 개념  (0) 2020.07.08
리액트 컨셉 개념  (0) 2020.07.06
클래스형 컴포넌트와 함수형 컴포넌트의 차이점  (0) 2020.06.15

 

 

https://blog.naver.com/getinthere/221694606685

 

안드로이드 1강 - (5) Relative 레이아웃

1. Relative 기본 예제activity_main.xmlitem_post1.xml​2. 위의 예제 참고https://blog.naver.com/codin...

blog.naver.com

 

안드로이드 drawable 폴더에 복붙할 시 하위폴더 인식을 못한다 (폴더 복붙 하지말 것)

 

 

layout_profile.xml

더보기
<?xml version="1.0" encoding="utf-8"?>
<merge
    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"
    >

    <RelativeLayout
        android:layout_marginLeft="10dp"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content">

        <ImageView
            android:id="@+id/img_pro1"
            android:layout_width="60dp"
            android:layout_height="60dp"
            app:srcCompat="@drawable/propic1" />

        <TextView
            android:layout_marginTop="5dp"
            android:layout_below="@id/img_pro1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Your story" />

    </RelativeLayout>

</merge>

 

더보기

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    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_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <LinearLayout

        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="100dp">

        <include layout="@layout/layout_profile" />
        <include layout="@layout/layout_profile" />
        <include layout="@layout/layout_profile" />
        <include layout="@layout/layout_profile" />
        <include layout="@layout/layout_profile" />

    </LinearLayout>

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

        </LinearLayout>

    </ScrollView>

</LinearLayout>

 

 

동그란 이미지를 만들기 위해 라이브러리 추가

https://github.com/hdodenhof/CircleImageView

 

hdodenhof/CircleImageView

A circular ImageView for Android. Contribute to hdodenhof/CircleImageView development by creating an account on GitHub.

github.com

 

 

 

androidx 를 써야한다 !!!! (구버전의 android는 사용못함)

구버전은 compile -> 신버전은 implementation

 

 

 

액션바 없애기

 

 

 

 

 

완성

 

activity_main.xml

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    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_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <LinearLayout

        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:orientation="horizontal">

        <include layout="@layout/layout_profile" />

        <include layout="@layout/layout_profile" />

        <include layout="@layout/layout_profile" />

        <include layout="@layout/layout_profile" />

        <include layout="@layout/layout_profile" />

    </LinearLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@android:color/darker_gray" />

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <!--            리니어 레이아웃 버티컬-->

            <include layout="@layout/layout_content" />
            <include layout="@layout/layout_content" />
            <include layout="@layout/layout_content" />
            <include layout="@layout/layout_content" />
            <include layout="@layout/layout_content" />

        </LinearLayout>

    </ScrollView>

</LinearLayout>

 

layout_profile.xml

더보기
<?xml version="1.0" encoding="utf-8"?>
<merge
    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"
    >

    <RelativeLayout
        android:layout_marginLeft="10dp"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content">

<!--        <ImageView-->
<!--            android:id="@+id/img_pro1"-->
<!--            android:layout_width="60dp"-->
<!--            android:layout_height="60dp"-->
<!--            app:srcCompat="@drawable/propic1" />-->

        <de.hdodenhof.circleimageview.CircleImageView
            xmlns:app="http://schemas.android.com/apk/res-auto"
            android:id="@+id/img_pro1"
            android:layout_width="60dp"
            android:layout_height="60dp"
            android:src="@drawable/propic1"
            app:civ_border_width="2dp"
            app:civ_border_color="#FF000000"/>

        <TextView
            android:layout_marginTop="5dp"
            android:layout_below="@id/img_pro1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Your story" />

    </RelativeLayout>

</merge>

 

layout_content.xml

더보기
<?xml version="1.0" encoding="utf-8"?>
<merge
    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">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="60dp">

            <de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
                android:id="@+id/img_pro2"
                android:layout_marginLeft="10dp"
                android:layout_width="40dp"
                android:layout_height="match_parent"
                android:src="@drawable/propic1"
                app:civ_border_color="#FF000000"
                app:civ_border_width="2dp" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:layout_toRightOf="@+id/img_pro2"
                android:gravity="center"
                android:text="numbiker.nikkhil"
                android:textSize="18dp"
                android:textStyle="bold" />

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="30dp"
                android:layout_height="match_parent"
                android:layout_alignParentRight="true"
                android:layout_marginRight="10dp"
                app:srcCompat="@drawable/ic_more" />


        </RelativeLayout>

        <ImageView
            android:id="@+id/imageView3"
            android:layout_width="match_parent"
            android:layout_height="300dp"
            android:scaleType="centerCrop"
            app:srcCompat="@drawable/postpic1" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="60dp">

            <ImageView
                android:id="@+id/imageView4"
                android:layout_width="40dp"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_marginLeft="10dp"
                app:srcCompat="@drawable/like" />

            <ImageView
                android:id="@+id/imageView5"
                android:layout_width="40dp"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/imageView4"
                app:srcCompat="@drawable/chat_bubble" />


            <ImageView
                android:id="@+id/imageView6"
                android:layout_width="40dp"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/imageView5"
                app:srcCompat="@drawable/send" />

            <ImageView
                android:id="@+id/imageView7"
                android:layout_marginRight="10dp"
                android:layout_width="30dp"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_marginLeft="10dp"
                app:srcCompat="@drawable/bookmark" />

        </RelativeLayout>

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="40dp">

            <de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
                android:id="@+id/img_pro3"
                android:layout_marginLeft="10dp"
                android:layout_width="35dp"
                android:layout_height="match_parent"
                android:src="@drawable/propic2"
                app:civ_border_color="#FF000000"
                app:civ_border_width="2dp" />

            <TextView
                android:id="@+id/textView"
                android:layout_toRightOf="@id/img_pro3"
                android:gravity="center"
                android:layout_marginLeft="10dp"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="Liked by"
                android:textSize="18dp"/>

            <TextView
                android:id="@+id/textView1"
                android:layout_toRightOf="@id/textView"
                android:gravity="center"
                android:layout_marginLeft="5dp"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="bhuvan.van"
                android:textSize="18dp"
                android:textStyle="bold"/>

            <TextView
                android:id="@+id/textView2"
                android:layout_toRightOf="@id/textView1"
                android:gravity="center"
                android:layout_marginLeft="5dp"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="and"
                android:textSize="18dp"/>

            <TextView
                android:id="@+id/textView3"
                android:layout_toRightOf="@id/textView2"
                android:gravity="center"
                android:layout_marginLeft="5dp"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="24 others"
                android:textSize="18dp"
                android:textStyle="bold" />

        </RelativeLayout>

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="50dp">

            <TextView
                android:id="@+id/textView4"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_marginLeft="15dp"
                android:gravity="center"
                android:text="numbiker.ni"
                android:textSize="18dp"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/textView5"
                android:layout_toRightOf="@id/textView4"
                android:gravity="center"
                android:layout_marginLeft="5dp"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="#asdf"
                android:textSize="18dp"
                android:textStyle="bold"
                android:textColor="@android:color/holo_blue_dark"/>

        </RelativeLayout>

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="60dp">

            <de.hdodenhof.circleimageview.CircleImageView
                xmlns:app="http://schemas.android.com/apk/res-auto"
                android:id="@+id/img_pro4"
                android:layout_marginLeft="10dp"
                android:layout_width="40dp"
                android:layout_height="match_parent"
                android:src="@drawable/propic3"
                app:civ_border_color="#FF000000"
                app:civ_border_width="2dp" />

            <EditText
                android:id="@+id/editTextTextPersonName"
                android:layout_toRightOf="@id/img_pro4"
                android:gravity="center"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:ems="10"
                android:inputType="textPersonName"
                android:textSize="22dp"
                android:textColor="@android:color/darker_gray"
                android:text="Add Comment..." />

            <!--            <TextView-->
<!--                android:id="@+id/textView6"-->
<!--                android:layout_toRightOf="@id/img_pro4"-->
<!--                android:gravity="center"-->
<!--                android:layout_marginLeft="15dp"-->
<!--                android:layout_width="wrap_content"-->
<!--                android:layout_height="match_parent"-->
<!--                android:text="Add Comment..."-->
<!--                android:textSize="22dp"/>-->

        </RelativeLayout>

        <TextView
            android:id="@+id/textView7"
            android:layout_marginLeft="15dp"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:text="8HOURS AGO"
            android:textSize="16dp"/>

    </LinearLayout>

</merge>

 

<EditText
                android:id="@+id/editTextTextPersonName"
                android:layout_toRightOf="@id/img_pro4"
                android:gravity="center"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:ems="10"
                android:inputType="textPersonName"
                android:textSize="22dp"
                android:textColor="@android:color/darker_gray"
                android:hint="Add Comment..."
                android:background="@android:color/transparent"/>

 

hint 는 placeholder와 비슷함

background는 밑줄을 없앤다

 

 

 

스마트폰 화면 전체를 window 라고 부른다

window는 백그라운드로 항상 깔려 있다

그 위에 올라가는 것이 activity

하나의 앱에는 여러개의 activity가  있다 (메인 로그인 회원가입 화면 등)

activity 위에는 SurfaceView가 올라간다

앱을 만든다는 것은 SurfaceView라는 하얀도화지에 그림을 그린다

 

뷰 - 그림

위젯 - 이벤트가 달려 있는 그림 - 안드로이드에서 제공하는 그림들 - 버튼 텍스트뷰 등등

머터리얼 - 

 

위젯을 직접만드는 것은 쉽지 않고, 기존의 것을 커스텀하여 사용

 

activity는
(1)자바파일
-로직
(2)XML
-화면

위의 두가지가 onCreate에서 합쳐져서 출력된다

 

자바에서는 함수에 파라미터로 넘기지만 

안드로이드에서는 시리얼 통신을 하여 데이터를 전송

 

버튼 내의 글자를 옮기기

 

 

속성을 줄때 id 아래에 주자

 

리니어 레이아웃 정리

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    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:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <Button
        android:id="@+id/button"
        android:layout_weight="1"
        android:gravity="left"
        android:layout_width="100dp"
        android:layout_height="0dp"
        android:text="b1" />

    <Button
        android:id="@+id/button2"
        android:layout_weight="1"
        android:gravity="right"
        android:layout_gravity="right"
        android:layout_width="100dp"
        android:layout_height="0dp"
        android:text="b2" />

    <Button
        android:id="@+id/button3"
        android:layout_weight="1"
        android:layout_gravity="center"
        android:layout_width="100dp"
        android:layout_height="0dp"
        android:text="b3" />


</LinearLayout>

 

 

렐러티브 레이아웃

리니어가 아니기 때문에 오리엔테이션이 필요 없다

 

 

버튼 2개를 추가했으나 겹쳐버린다

 

 

-------------------

 

 

---------------------

 

 

위아래 배치

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    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_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <Button
        android:id="@+id/btn1"
        android:layout_alignParentTop="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Top Menu" />

    <Button
        android:id="@+id/btn2"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Bottom Menu" />

    

</RelativeLayout>

리니어로 위와같이 하려면 마진을 엄청 줘야하고 불편하다

그래서 렐러티브를 이용한다

 

 

드래그하면 코드 위치가 바뀐다

 

 

부모와의 관계

 

 

start 는 시작위치가 위인지 왼쪽인지 상관없이 시작지점

 

 

다른 컴포넌트의 아래에 배치

 

---------------------

 

 

btn2의 위쪽에 배치

 

-----------------

 

 

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    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_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <Button
        android:id="@+id/btn1"
        android:layout_alignParentTop="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Top Menu1" />

    <Button
        android:id="@+id/btn4"
        android:layout_toRightOf="@id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Top Menu2" />

    <Button
        android:id="@+id/btn3"
        android:layout_below="@id/btn1"
        android:layout_above="@id/btn2"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="Bottom Menu" />

    <Button
        android:id="@+id/btn2"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Bottom Menu" />


</RelativeLayout>

---------------

 

 

----------------

 

 

겹쳐버린다

-------------

 

 

렐러티브 레이아웃은 HTML의 div 와 같은 역할 

-----------

 

 

--------------

 

 

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    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_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <RelativeLayout
        android:id="@+id/top"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <Button
            android:id="@+id/btn1"
            android:layout_alignParentTop="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Top Menu1" />

        <Button
            android:id="@+id/btn4"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:layout_toRightOf="@id/btn1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Top Menu2" />

    </RelativeLayout>

    <Button
        android:id="@+id/btn3"
        android:layout_below="@id/top"
        android:layout_above="@id/btn2"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="Bottom Menu" />

    <Button
        android:id="@+id/btn2"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Bottom Menu" />


</RelativeLayout>

------------------

 

 

뎁스depth가 있으면 있을수록 느려진다

---------------

 

 

애매한 위치에 배치하려면 margin을 줘야한다

---------------

 

 

사진 저장 위치

----------------

 

 

 

 

가중치가 자동으로 잡힌다

 

width를 0으로 하고 height를 match_parent로 설정

 

---------------

 

더보기
<TextView
            android:id="@+id/textView"
            android:textSize="25sp"
            android:textStyle="bold"
            android:gravity="center"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="TimeLine" />

-------------------

 

 

 

 

이미지 구성

 

스케일 타입 centerCrop

------------------------------

 

 

클립아트 만들 때 하는 것

---------------------

 

 

 

 

 

 

 

 

 

---------------------

 

 

렐러티브

이미지뷰 텍스트뷰 이미지뷰

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/textView"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="TimeLine"
            android:textSize="25sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Untitled"
            android:textSize="25sp"
            android:textStyle="bold" />

    </LinearLayout>

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="match_parent"
            android:layout_height="400dp"
            android:scaleType="centerCrop"
            app:srcCompat="@drawable/img1" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="50dp">


            <ImageView
                android:id="@+id/imageView3"
                android:layout_marginLeft="10dp"
                android:layout_width="30dp"
                android:layout_height="match_parent"
                android:layout_alignParentLeft="true"
                app:srcCompat="@drawable/ic_favorite" />

            <TextView
                android:id="@+id/textView3"
                android:gravity="center"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/imageView3"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="TextView" />

            <ImageView
                android:id="@+id/imageView4"
                android:layout_width="35dp"
                android:layout_marginRight="10dp"
                android:layout_height="match_parent"
                android:layout_alignParentRight="true"
                app:srcCompat="@drawable/ic_more" />
        </RelativeLayout>

    </LinearLayout>

</LinearLayout>

 

-----------------------

 

 

 

-------------------

 

 

 

더보기
<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="60dp">

            <TextView
                android:id="@+id/tv_username"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="아이디"
                android:textStyle="bold"
                android:textSize="25sp">

            </TextView>

            <TextView
                android:id="@+id/tv_comment"
                android:layout_marginLeft="10dp"
                android:layout_toRightOf="@id/tv_username"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="내용"
                android:textSize="25sp">

            </TextView>

        </RelativeLayout>

 

---------------------

 

 

XML파일에서 컴포넌트들은 클래스이기 때문에 첫글자를 대문자로 해야한다

---------------------

 

--------------------

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/textView"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="TimeLine"
            android:textSize="25sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Untitled"
            android:textSize="25sp"
            android:textStyle="bold" />

    </LinearLayout>

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

<!--        스크롤뷰는 레이아웃을 하나 밖에 못둔다 레이아웃으로 묶기-->

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical">

            <include layout="@layout/layout_content" />
            <include layout="@layout/layout_content" />
            <include layout="@layout/layout_content" />

        </LinearLayout>


    </ScrollView>

</LinearLayout>

-------------------------

 

 

 

 

 

 

 

 

 

 

 

 

$를 이용해 변수를 만들 수 있다.

위의 코드는 이용자의 폴더로 가게된다

$HOME = /home/ubuntu

 

 

이것도 마찬가지로 이용자의 폴더로 가게된다

 

 

폴더 생성 명령어

 

 

파일 생성 명령어

이렇게 생성하는 것 보다는 에디터(nano) 등을 사용하는 것이 좋다

 

 

버전 확인

 

 

리눅스 기본 에디터 vim

 

i키를 누르면 인서트모드(작성모드)

 

:q! + enter 빠져나오기

 

https://www.morenice.kr/25

 

Linux 개발환경 - vim 사용법

vim이란 간단히 말해 텍스트 에디터이다. 기존 터미널 환경의 vi라는 에디터에서 기능 개선 및 확장이 되었고, 그래서 이름이 "vi + improvement = vim"이다. 현재 터미널을 통하여 하는 개발 도구 중 ��

www.morenice.kr

 

 

리눅스는 파일 확장자에 의미를 두지 않는다, 권한에 의미를 둔다

 

 

탭키를 누르면 자동완성 된다

 

 

cat 모니터 화면에 파일의 모든 내용을 출력

tail 모니터 화면에 파일의 끝부분을 출력

 

 

 

 

에디터로 20줄 정도 적어본다

 

 

head 

head 는 파일의 맨 앞줄 10줄을 출력한다

 

 

-숫자 옵션을 이용하여 개수도 조정 할 수 있다

 

 

프로그램의 가이드를 보려면 아래와 같이 두가지 중 하나를 사용하면 된다

 

 

 

 

tail -f (--follow)

계속하여 로그를 확인할 때 사용

 

 

 

 

 

 

 

 

 

 

 

 

 

위 빨간 박스의 div 안에 화면이 들어간다

 

 

리턴 담당이 App이고 index.html의 id가 root인 태그 안에 넣는다

 

 

JSX 문법

자바스크립트로 그림을 그리기 위한 것

 

 

 

 

 

 

지금까지 기본 사용법.

 

css를 사용할 수 있는 프레임 워크를 설치 하면됨

 

https://heropy.blog/2017/11/25/yarn/

 

Yarn 설치 및 사용법

Facebook에서 만든 자바스크립트 패키지 매니저인 Yarn을 사용해 봅시다.Yarn 설치Yarn은 다양한 OS의 설치를 지원합니다.macOSHomebrew를 사용하는 설 ...

heropy.blog

yarn 설치법

 

 

저장할 시 자동 정렬

 

설정 - prettier

홑따옴표

 

 

 

 

yarn 라이브러리를 찾는 곳

 

 

npm 라이브러리를 찾는 곳

 

 

 

 

 

 

 

 

 

익스텐션에서 설치

자동완성

 

 

리액트에서는 css를 따로 쓰지 말고 컴포넌트 안에 만들어 두면 편하다

디자인과 html을 같이 세팅

 

 

 

 

 

 

https://blog.naver.com/getinthere/221694578995

 

안드로이드 1강 - (1) 환경 구성

1. 안드로이드 설치https://developer.android.com/studio/index.html?hl=ko2. minSdk와 compileSd...

blog.naver.com

 

 

 

 

 

View Group - 레이아웃 - 뷰들을 담을 수 있다

1.리니어 - 위에서 아래, 왼쪽에서 오른쪽으로 화면을 구성
2.렐러티브 - 프레임 또는 컴포넌트와 관계되어 위치를 지정 (반응형)
3.그리드 - 격자모양으로 원하는 열의 개수를 정할 수 있다
4.제약 -

 

view - 버튼, 텍스트뷰 등등

 

 

전체 레이아웃은 코드로 수정

 

 

이렇게 수정

 

 

 

 

세로 또는 가로방향 세팅

 

 

 

 

 

 

넓이는 부모의 넓이

높이는 컨텐츠의 높이

 

 

 

 

 

 

px는 픽셀단위

dp는 비율

 

 

 

 

 

 

 

 

 

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    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:orientation="vertical"

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <Button
        android:id="@+id/button7"
        android:layout_width="match_parent"
        android:layout_height="70dp"
        android:text="Button" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="70dp"
        android:layout_weight="100"
        android:orientation="horizontal">


        <Button
            android:id="@+id/button9"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button" />

        <Button
            android:id="@+id/button10"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button" />

        <Button
            android:id="@+id/button11"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button" />

        <Button
            android:id="@+id/button12"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="Button" />

    </LinearLayout>

    <Button
        android:id="@+id/button8"
        android:layout_width="match_parent"
        android:layout_height="70dp"
        android:text="Button" />

</LinearLayout>

weight설정할 때는 해당 넓이나 높이를 0dp로 설정

 

 

    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"

코어 라이브러리와 같은것

 

 

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    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:orientation="vertical"

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_vertical"
    tools:context=".MainActivity">

<!--gravity는 내부배치 -->
    <Button
        android:id="@+id/button19"
        android:layout_width="match_parent"
        android:layout_height="300"
        android:gravity="right|center"
        android:textSize="50sp"
        android:text="Button" />
</LinearLayout>

 

 

더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout

    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:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <LinearLayout
        android:layout_gravity="center"
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="match_parent">

        <Button
            android:id="@+id/button7"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_gravity="center"
            android:text="Button"

            android:textSize="50sp"
            />

    </LinearLayout>

</LinearLayout>

 

 

 

'App > Android' 카테고리의 다른 글

인스타그램 UI 만들기  (0) 2020.07.09
200709 / 리니어 레이아웃으로 화면구성 /  (0) 2020.07.09
안드로이드 // 기본 세팅  (0) 2020.07.08
안드로이드 개발 가이드  (0) 2020.07.08
안드로이드 설치  (0) 2020.07.07

 

-----------

 

 

책따라하려면  10.0버전체크 (29)

 

안드로이드에서 액티비티란 - 화면

 

폴더명은 소문자

 

 

 

인텔 amd 구분

 

세팅

자동 임포트

 

 

 

alt enter 매직키

ctrl q

shift shift

alt 드래그

 

 

main이 없다는 것은 실행의 주도권이 안드로이드에 있다는 것이다
(프레임워크)

 

 

 

 

핫리로드 - 변경된 내용만 바꿔서 펌웨어 업데이트

 

화면마다 Activity 파일이 필요하다

그림 그리는 코드 / 자바 코드

분리되어있다

 

 

 

(하위버전을 입력해도 문제는 없다 - 개발 버전이 높기 때문)

 

 

 

'App > Android' 카테고리의 다른 글

인스타그램 UI 만들기  (0) 2020.07.09
200709 / 리니어 레이아웃으로 화면구성 /  (0) 2020.07.09
안드로이드 // 레이아웃 구성  (0) 2020.07.08
안드로이드 개발 가이드  (0) 2020.07.08
안드로이드 설치  (0) 2020.07.07

+ Recent posts