Coder Social home page Coder Social logo

scalablelayout's People

Contributors

jusinplus avatar koipkoi avatar ssomai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scalablelayout's Issues

ScalableLayout 안에 :TextView, ImageView에 id입력시 미리보기 오류

ScalableLayout 안에 TextView등 위젯들을 위치시키고 java파일에서 사용하고 위해

android:id="@+id/ddddddddd" 이런식으로 입력하니깐 미리보기에서 오류가 나서 안보입니다. 실행할때는 문제없는데, XML화면 미리보기가 안되니 불편하기는 합니다 ㅠㅠ

IntelliJ 13 버젼사용하고 있습니다.

Rendering Problems 
java.lang.UnsupportedOperationException   at 
android.content.res.BridgeResources.getResourceTypeName(BridgeResources.java:479)   at
 android.view.View.toString(View.java:4017)   at 
com.jnm.android.widget.ScalableLayout.onMeasure(ScalableLayout.java:415)   at 
android.view.View.measure(View.java:16458)   at 
android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)   at 
android.widget.FrameLayout.onMeasure(FrameLayout.java:310)   at 
android.view.View.measure(View.java:16458)   at 
android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)   at 
android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404)   at 
android.widget.LinearLayout.measureVertical(LinearLayout.java:695)   at 
android.widget.LinearLayout.onMeasure(LinearLayout.java:588)   at 
android.view.View.measure(View.java:16458)   at 
android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)   at 
android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404)   at 
android.widget.LinearLayout.measureVertical(LinearLayout.java:695)   at 
android.widget.LinearLayout.onMeasure(LinearLayout.java:588)   at 
android.view.View.measure(View.java:16458)  

와우~~ 정말 멋진 라이브러리입니다.

다른 블로그에서 ScalableLayout을 소개한 글을 읽고 찾아 왔습니다. 아직 사용해보진 않았지만, 정말 멋진 라이브러리입니다.
저는 그냥 단순하게 LinearLayout+layout_weight로 무식하게 작업하면 뷰의 크기는 대충 맞출 수 있는데,
뷰에 들어가는 글자 크기는 기기에 따라 좀 작아지기도 하고, 커지기도 해서 영 불만이었습니다.
글자크기도 화면크기에 따라 맞추어 주는 것 같은데, 정말 편할 것 같습니다.

그런데 앱위젯에서는 사용하지 못하겠죠? 앱위젯에서도 비슷한 기능을 구현할 수는 없을까요?

Listview질문있습니다.

정말 유용하게 사용하고있습니다. 그런데 리스트뷰를 쓸때 어려움이 있더라구요. activity_main에 LinearLayout을 두고 거기서 리스트뷰를 채우는걸로 생각했는데 item에서 설정값을 두니 LinearLayout을 벗어나는 걸로 나왔습니다. 잘 쓰고 싶은데 방법을 잘 모르겠습니다. 그거빼고는 완벽해요 ㅠㅠ 도와주시면 감사하겠습니다

[요구사항] 좌표 시작을 view의 가운데로 바꿀 수 있을까요

left로 되어 있어서 크기가 다른 view들을 가운데로 정렬 시킬 때마다 크기의 반을 중심 좌표에서 빼줘야해서 불편한 점이 있습니다.

또 view의 크기가 바뀌면 위치도 다시 설정해줘야하는 불편함이 있어서 view의 center에 좌표의 원점이 있는 설정도 있었으면 좋겠습니다. .

질문 있습니다.

scale_left와 scale_top은 마진 비율을 의미하는 것 인가요?

그리고 혹시 각 속성이 어떤 역활을 하는지 래퍼런스 페이지를 추가하는 것은 어떤가요?

안녕하세요 질문 한 가지 있습니다.

우선 Scalable 라이브러리 너무 잘 쓰고 있다고 감사하단 말씀 먼저 전해드립니다.

다름이 아니라, 질문이 한 가지 있습니다.

setting 액티비티 레이아웃에서 동적인 레이아웃을 사용하려고 합니다.

ScrollView로 고정 높이를 정해주고

알람 플러스 버튼이 하나만 보이다가 하나 더 추가하면 사진처럼 플러스 버튼이 하나 더 생기면서
레이아웃 크기가 늘어남과 동시에 아래에 배치되어있는 view들은 아래로 밀려나게끔 하고 싶습니다.
알람은 2개까지만 설정하려고 하고있습니다.

setting

제가 생각한 방법으로는 알람 높이라는 변수를 하나 정하고 알람 1이 추가가 되지 않았을때 알람2는 gone으로 보이지 않게 처리하고 알람1이 추가가 되었을때 알람2가 visible 처리 됨과 동시에 고정 높이와 아래 있는 view 들을 알람높이변수 + 해주려고 하는데 이 방법밖에는 없는건가요?

TextView에 Drawable 붙일 때 이미지 크기가 정확하질 않아서요

뭐라고 해야 되나? 실제보다 크게 나와요. 그래서 텍스트뷰 크기를 이미지 픽셀 크기에 맞추면 이미지 가장자리가 잘립니다.
ImageButton에서도 마찬가진데, 그거는 scaletype을 아무거나 지정해 주면 해결되고
ImageView에서는 정상적으로 동작해서, 최소 크기에 맞춰서 이미지도 재조정됩니다.
옛날 버전은 안그랬지 싶은데 확인 좀 부탁드립니다.

screenshot_2015-10-29-10-05-40

맨 왼쪽이 ImageView, 가운데가 ImageButton, 맨 우측이 TextView에 Drawable 붙인 겁니다.
ImageView는 정상적이고, ImageButton은 크기값이 ImageView와 같은 상태입니다.

Render Problem

안녕하세요. 잘 사용하고 있음에 먼저 감사드립니다.

다름이아니라 복사한 프로젝트 내에서 Render Problem이 생겨서 문의드립니다.

다른 원 컴퓨터에서는 정상적으로 레이아웃이 보입니다.

  1. Render Error나는 xml 레이아웃을 다른 scalablelayout 적용한 프로젝트에

넣음 -> 정상작동

  1. scalablelayout만 다른 레이아웃을 감싸서 아무것도 없이 적용시에는 미리보기가 되나
    안에 textview, button등 하나라도 들어가면 에러가 납니다.

메시지는 아래와 같습니다. 감사합니다.

java.lang.NoSuchFieldError: View_scale_left_baseposition   at com.ssomai.android.scalablelayout.ScalableLayout$LayoutParams.(ScalableLayout.java:938)   at com.ssomai.android.scalablelayout.ScalableLayout.generateLayoutParams(ScalableLayout.java:225)   at com.ssomai.android.scalablelayout.ScalableLayout.generateLayoutParams(ScalableLayout.java:26)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:860)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:861)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)   at android.view.LayoutInflater.inflate(LayoutInflater.java:518)   at android.view.LayoutInflater.inflate(LayoutInflater.java:397)

안녕하세요...xml파일에서 오류나요ㅜㅜ

ScalableLayout임포트하고요 xml샘플 그대로넣어봤는데요..텍스트뷰랑랑 이미지뷰 부분에서 전부 에러뜨네요ㅜ.ㅜAttribute is missing the Android namespace prefix 이에러요!!오타도 한개도 없는데..오ㅐ이러는걸까요 도와주시면 감사하겠습니다!

가운데 정렬 방법은 없나요?

가운데 정렬이나 특정view옆과 같은 relativelayout의 정렬 방법을 사용할 수는 없을까요?

가운데를 기준으로 가변크기의 view들을 배치하는 경우가 많은데, 어떻게 해야할지를 모르겠습니다.

Other Elements Support

Is there a way or do you have any example that this is applicable to elements like buttons, textboxes and the like. It seems that only the TextView and ImageView is supported for this(correct me if I'm wrong). TIA

안녕하세요 ScalableLayout을 사용하고있는데요.

작업은 1280 x 720 (xhdpi) 기준으로 작업했습니다.
테스트 기기는 G2로 테스팅 해봤는데요 액션바 부분과 소프트키 부분이 이렇게 출력이 되어버리네요
소프트키가 없는 갤럭시S6 라던지 다른 디바이스에서는 다 정상적으로 출력이 되는데 G2는 소프트키때문인지 저렇게 짤리게 됩니다. 왜 그럴까요??

1
2

Top과 Left

Top과 Left는 java상에서 수정할 수 없나요?
예로
이미지가 있을경우엔 width 300 height 200 인데
이미지가 없고 텍스트만 있으면 width 300 height 50
으로 구성하고싶습니다.
scalablelayout height와 width는 수정이 되는듯한데
나머지 자식들의 top과 left가 수정이 안되는듯하여 여쭤봅니다

Gradle에서 적용시 XML에러

안드로이드를 Gradle방식으로 적용후 ScalableLayout 을 사용하려 하는데 쉽지가 않네요 ㅠㅠ

별방법을 다 사용해서 오류는 없애보았는데, 실행시 죽어버리고, 미리보기도 안나오네요 ㅠㅠ

일단 IntelliJ에서 XML Preview에 떠있는 오류 적어보겠습니다.

Rendering Problems
The following classes could not be found:

  • com.jnm.android.widget.ScalableLayout (Fix Build Path, Create Class)
    Tip : Try to build the project.

Gradle쓰기 이전에는 잘 사용했는데, 지금은 사용을 못하고 있습니다 ㅠㅠ

해상도 대응 관련하여 문의드립니다.

안녕하세요~ 오전에 다른 건으로 문의 드렸었는데요.
이번엔 다른 질문이 있어 문의드리게 되었습니다~

ScalableLayout을 사용하면서 대체로 단말기의 가로는 대응이 잘 되지만 세로가 정확히 대응이 안되는 것 같습니다. (하단에 소프트 키가 존재하는 단말이라던지.. 화면 비율이 달라서 그런건지..)
보통 레이아웃을 구성할 때 최상위에 LinearLayout이나 RelativeLayout을 두고 작업을 합니다.
작업 내용을 여러 단말기에 올려봤을 때 전체적인 비율은 잘 나오는것 같지만 화면에 스크롤 기능이 없을 때
한 화면에 모든 구성요소가 정확히 표현되어야 할 경우가 조금 까다로운 것 같습니다.

예를 들어 디자이너로부터 1080 x 1920 기준의 가이드를 받아서 작업을 한다고 했을 때, LinearLayout과 RelativeLayout을 적절히 활용하여 작업한 내용을 단말에 올려보면 항상 height 여유공간이 부족할때가 많습니다. (ScrollView가 없어야 하고, 한 화면에 구성 요소들을 모두 보여주어야 할 때)
실제 해상도가 1080 x 1920인 단말에 올려봐도 height가 약간 부족하여 ScrollView를 넣지 않으면 화면이 일그러지는 현상이 있습니다.

질문이 조금 두서없는지 모르겠습니다만, 혹시 이런 경우에 ScalableLayout을 이용한 해결방안이 존재할지요?? 아니면 라이브러리 외적인 다른 요소를 고려해야 할까요?

사용법 적기!

  1. svn 체크아웃으로 하는법
  2. 소스 가져가는법
  3. setScale_TextViewWrapContentMode 사용법

ㅠㅠㅠ

style 사용 여부

중복되는 속성값들을 템플릿으로 사용하기위해 style이나 dimens를 사용해보려고 하는데
어떻게 하면 될까요?

질문좀요

(1)다음 2개의 차이가 먼가요?
scale_base_width
scale_width

(2)다음 속성들의 용법이 먼가요?
textview_wrapcontent_direction
textview_wrapcontent_resizesurrounded
textview_wrapcontent_movesiblings

(3)ScalableLayout은 부모 레이아웃에서 써주면 하위 레이아웃들에서도 다 써줘야 하는건가요?

예를들어 애초에 아래와 같은 구조의 레이아웃이 있다면

LinearLayout
--LinearLayout
----LinearLayout
------TextView
----LinearLayout
------TextView
------Button

아래처럼 다써줘야 하는건가요?

LinearLayout
--ScalableLayout
----LinearLayout
------ScalableLayout
--------LinearLayout
----------ScalableLayout
------------TextView
----LinearLayout
--------ScalableLayout
----------TextView
----------Button

레이아웃 크기 설정 질문입니다.

샘플 코드중에 아래와 같은 코드가 있는데

// 상대적인 단위로 pixel 이나 dp 단위가 아닙니다.
ScalableLayout sl = new ScalableLayout(this, 400, 200);

여기서 400,200이 의미하는게 가로가 400, 세로가 200이니까 1:0.5 비율이라고 보고
화면의 해상도가 만약에 가로가 720 이고 세로가 1280일때 1:0.5을 적용시켜서
저 위의 레이아웃은 단말기에서 가로가 720이고 세로가 360이 되는건가요??

저 사이즈를 어떻게 가늠해야할지 잘 모르겠습니다.

Textview 부분 색상지정 or 크기지정

기존에 있던 TextView에선
SpannableStringBuilder 로 색상 및 크기가 부분적으로 지정이 가능하였는데
ScalableLayout으로 만든 TextView에서는 저게 적용이 되지 않습니다.
다른 방법이 있나요?

xml에서 ScalableLayout을 사용할려고 하면 에러가 발생합니다.

<com.xxxx.xxxxxx.ScalableLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/main_textview"
android:id="@+id/main_sl"
android:gravity="center"
android:layout_gravity="center_vertical|center_horizontal"
sl:scale_base_width="600"
sl:scale_base_height="300" >

이렇게 선언을 하면 sl: 이 구문에서 오류가 발생합니다.
아무리 알아보고 해도 원인을 모르겠습니다. ㅠㅠ

Size text to fit TextView in ScaleableLayout

Hi there, thanks for the great layout. Works well.

I have a slight problem with localisations though - since the strings in different languages are different lengths, I need to set a different text size for each language. Is there a way to make text shrink/expand to fit the TextView?

I have a custom TextView implementation that does this and works well when used outside of the ScalableLayout, but does not work when placed within - the ScalableLayout sizing logic seems to have the final word.

If there is no way to do this now, I think it would be a great addition as you often care more about what area the text occupies rather then the font size.

xml Rendering problem 버전 차이

2.1.1버전으로 sync시에는 rendering problem이 발생하는데, 2.0.0으로 사용시에는 전혀 문제가 없습니다.
확인부탁드립니다.

textview

wrapcontent_direction, movesiblings, resizesurrounded를
xml단에서 적용 시킨후 텍스트를 쓰고나고 그 레이아웃은 고정한채 더 늘어나거나 하지 않도록 고정해버릴순 없나요..?

레이아웃 Preview 화면에서의 에러

안녕하세요.
이번 프로젝트를 진행하면서 ScalableLayout을 사용해보려고하는데요,

xml 프리뷰 화면에서 아래와 같은 에러가 나면서 렌더링이 안돼는데, 어떤문제일까요?

AndroidStudio 2.3.3, SDK는 21 사용중입니다.

java.lang.NoSuchFieldError: View_scale_left_baseposition   at com.ssomai.android.scalablelayout.ScalableLayout$LayoutParams.(ScalableLayout.java:938)   at com.ssomai.android.scalablelayout.ScalableLayout.generateLayoutParams(ScalableLayout.java:225)   at com.ssomai.android.scalablelayout.ScalableLayout.generateLayoutParams(ScalableLayout.java:26)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:860)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:861)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)   at android.view.LayoutInflater.inflate(LayoutInflater.java:518)   at android.view.LayoutInflater.inflate(LayoutInflater.java:397) Copy stack to clipboard Tip: Try to refresh the layout.

Render problem 문제

좋은 라이브러리 만들어 주셔서 감사합니다.

빌드를 하면 정상적으로 빌드되어 레이아웃이 적용 되나 미리보기가 제공되지 않아 불편함이 생겨 질의 드립니다.

빌드 버젼은 최소 21이며
타겟은 25입니다.

xml 미리보기에서 Render errors 가 발생하여 아래와 같은 log가 발생하였습니다.

Render problem

java.lang.NoSuchFieldError: View_scale_left_baseposition   at com.ssomai.android.scalablelayout.ScalableLayout$LayoutParams.(ScalableLayout.java:938)   at com.ssomai.android.scalablelayout.ScalableLayout.generateLayoutParams(ScalableLayout.java:225)   at com.ssomai.android.scalablelayout.ScalableLayout.generateLayoutParams(ScalableLayout.java:26)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:860)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)   at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:861)   at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)   at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)   at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)   at android.view.LayoutInflater.inflate(LayoutInflater.java:518)   at android.view.LayoutInflater.inflate(LayoutInflater.java:397)

아래는 xml 소스 코드 입니다.

<ImageView
    android:id="@+id/login_imageview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scaleType="centerCrop" />


<com.ssomai.android.scalablelayout.ScalableLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    sl:scale_base_height="1600"
    sl:scale_base_width="1080"
    android:layout_alignParentTop="true"
    android:layout_alignParentStart="true">

    <View
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/white"
        sl:scale_height="156"
        sl:scale_left="0"
        sl:scale_top="0"
        sl:scale_width="1080">

    </View>


    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/arrow"
        sl:scale_height="52"
        sl:scale_left="45"
        sl:scale_top="78"
        sl:scale_top_baseposition="center"
        sl:scale_width="66" />


    <Button
        android:id="@+id/back_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/transparent"
        sl:scale_height="140"
        sl:scale_top="80"
        sl:scale_top_baseposition="center"
        sl:scale_width="170" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        sl:scale_left="540"
        sl:scale_top="80"
        sl:scale_top_baseposition="center"
        sl:scale_left_baseposition="center"
        sl:scale_width="300"
        sl:scale_height="100"
        sl:scale_textsize="45"
        android:gravity="center"
        android:textColor="@color/mainTextBlack"
        android:text="로그인" />




    <TextView
        android:id="@+id/check_textview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="@color/white"
        sl:scale_top="740"
        sl:scale_left="540"
        sl:scale_left_baseposition="center"
        sl:scale_width="900"
        sl:scale_height="90"
        sl:scale_textsize="42"/>

    <View
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/white"
        sl:scale_height="160"
        sl:scale_left="540"
        sl:scale_left_baseposition="center"
        sl:scale_top="355"
        sl:scale_width="990">

    </View>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/d_email"
        sl:scale_height="38"
        sl:scale_left="80"
        sl:scale_top="435"
        sl:scale_top_baseposition="center"
        sl:scale_width="39" />

    <EditText
        android:id="@+id/id_edittext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/white"
        android:gravity="center_vertical"
        android:hint="id@mail"
        android:maxLines="1"
        android:singleLine="true"
        sl:scale_height="160"
        sl:scale_left="160"
        sl:scale_textsize="45"
        sl:scale_top="355"
        sl:scale_width="850" />

    <View
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/white"
        sl:scale_height="160"
        sl:scale_left="540"
        sl:scale_left_baseposition="center"
        sl:scale_top="550"
        sl:scale_width="990">

    </View>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/d_pw"
        sl:scale_height="40"
        sl:scale_left="80"
        sl:scale_top="630"
        sl:scale_top_baseposition="center"
        sl:scale_width="39" />

    <EditText
        android:id="@+id/pw_edittext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/white"
        android:gravity="center_vertical"
        android:hint="password"
        android:inputType="textPassword"
        android:maxLength="20"
        android:maxLines="1"
        sl:scale_height="160"
        sl:scale_left="160"
        sl:scale_textsize="45"
        sl:scale_top="550"
        sl:scale_width="850" />

    <Button
        android:id="@+id/login_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/border_login"
        android:text="LOGIN"
        android:textColor="@color/white"
        sl:scale_height="150"
        sl:scale_left="540"
        sl:scale_left_baseposition="center"
        sl:scale_textsize="43"
        sl:scale_top="855"
        sl:scale_width="990" />

    <TextView
        android:id="@+id/signup_textview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center|left"
        android:text="Join"
        android:textColor="@color/white"
        sl:scale_height="65"
        sl:scale_left="45"
        sl:scale_textsize="38"
        sl:scale_top="1020"
        sl:scale_width="100" />

    <TextView
        android:id="@+id/findpass_textview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center|right"
        android:text="Find a password"
        android:textColor="@color/white"
        sl:scale_height="65"
        sl:scale_left="1030"
        sl:scale_left_baseposition="right"
        sl:scale_textsize="38"
        sl:scale_top="1020"
        sl:scale_width="300" />

    <Button
        android:id="@+id/facebook"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/border_login"
        android:gravity="center"
        android:text="Facebook Login"
        android:textColor="@color/white"
        sl:scale_height="150"
        sl:scale_left="540"
        sl:scale_left_baseposition="center"
        sl:scale_textsize="43"
        sl:scale_top="1180"
        sl:scale_width="990" />

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/d_facebook"
        sl:scale_height="35"
        sl:scale_left="290"
        sl:scale_top="1255"
        sl:scale_top_baseposition="center"
        sl:scale_width="55" />

    <Button
        android:id="@+id/google"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/border_login"
        android:gravity="center"
        android:text="Google Login"
        android:textColor="@color/white"
        sl:scale_height="150"
        sl:scale_left="540"
        sl:scale_left_baseposition="center"
        sl:scale_textsize="43"
        sl:scale_top="1375"
        sl:scale_width="990" />


    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/d_google"
        sl:scale_height="35"
        sl:scale_left="290"
        sl:scale_top="1450"
        sl:scale_top_baseposition="center"
        sl:scale_width="55" />


</com.ssomai.android.scalablelayout.ScalableLayout>

scale_left_baseposition 관련해서

안녕하세요^^
해상도 문제 때문에 고심하던중 만들어주신 Lib 를 보고 사용하고있는 사용자입니다^^
먼저 감사의 말씀을 드립니다.
덕분에 큰 문제들은 어느정도 해결이 된 것같습니다 ㅎ

본론으로 들어가겠습니다.
보통 RelativeLayout에서 TextView의 width를 wrap으로 잡고 layout_centerHorizontal="true"로 하게되면
텍스트뷰는 현재 레이아웃의 중앙으로 잡혀지게됩니다.

ScalableLayout 같은 경우에는 scale_left_baseposition = center로 하면된다는 글을 보았습니다.
(https://github.com/ssomai/ScalableLayout/releases/tag/v2.1.1)

그래서 310 x 500 으로 scale_base_width, height를 맞추고
TextView를 scale_left="155"
scale_left_baseposition="center"
로 잡았습니다.
여기까지는 문제가 없었습니다.

그런데 제 텍스트가 들어갈 TextView 의 scale_width를 잡아주려고하는데...
여기는 텍스튜의 길이가 가변적이라 어떻게 잡아줘야할 지 모르겠더군요...
width를 max로 잡아버리면 center가 되지않고 맨 왼쪽으로 가게되고...
어떤식으로 width를 잡는게 가장 좋을까요..?

<com.ssomai.android.scalablelayout.ScalableLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                sl:scale_base_width="310"
                sl:scale_base_height="500"
                android:layout_centerHorizontal="true"
                android:layout_below="@id/login_title_layout">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/login_content"
                    android:textColor="@color/white"
                    android:textStyle="bold"
                    sl:scale_left="155"
                    sl:scale_left_baseposition="center"
                    sl:scale_top="25"
                    sl:scale_top_baseposition="center"
                    sl:scale_width="270"
                    sl:scale_height="20"
                    sl:scale_textsize="11"
                    sl:textview_wrapcontent_direction="bottom"
                    sl:textview_wrapcontent_resizesurrounded="true"
                    sl:textview_wrapcontent_movesiblings="true"/>
</com.ssomai.android.scalablelayout.ScalableLayout>

xml에서 textview_wrapcontent_resizesurrounded 에러

안녕하세요 ScalableLayout로 어플만들고있습니다.
그런데 버그가 있는거 같아서 문의 드립니다.
XML 내에서 텍스트 사이즈를 딱 맞게 줄이려고
sl:textview_wrapcontent_direction="right"
sl:textview_wrapcontent_resizesurrounded="true" 로 쓰고있는데
그 부모들의 left나 top가 1이라도 있는 경우 출력자체가 안되는 버그가 있습니다.
부모뿐만 아니라 부모의 부모를 쭉 타고가서 루트까지 전부 left top이 0이여야 제대로 보여지는 현상이 있어서 이슈 적어봅니다.

padding, margin

padding 과 margin 은 어떻게 하면 줄 수 있나요..?

예로들어서 TextView안에서 Text들에 대한 padding 을 주고 싶은데 다른 방법이 없더라구여..

margin 같은 경우 보통 좌표값으로 입력해서 사용은 잘 하지 않지만, 있으면 굉장히 편리 할 듯 합니다.

오픈소스 프로젝트 디펜더시 설정

안녕하세요, 안드로이드 앱 공부를 하는 학생입니다.

우연히 scalableLayout을 알게되서 살펴보려고 하는데요,

오픈소스 프로젝트에 디펜더시 설정하려고

sample_scalablelayout > build.gradle에

dependencies {
compile 'com.ssomai:android.scalablelayout:2.1.0'
}

디펜더시 설정을 했는데,

Error:No such property: nexusUsername for class: org.gradle.api.publication.maven.internal.deployer.DefaultGroovyMavenDeployer

라는 에러가 납니다. 혹시 잘못 설정한건지 궁금합니다.

감사합니다.

wrapcontent 관련 질문입니다.

안녕하세요.
우선 좋은 라이브러리 만들어서 제공해 주심에 감사의 말씀 드립니다.
처음에는 쓰기가 어려웠지만 계속 쓰다보니 이제 어느정도 손에 익어서 편하게 잘 쓰고 있습니다.

쓰다보니 필요한 기능이 있어서 질문 드리게 되었습니다.
textview_wrapcontent_direction를 부여했을 때 wrapcontent를 통해 최대로 늘어날 수 있는 MAX 수치 값을 지정할 수 있는 방법은 없을까요?? 글씨가 길어지면 부모 레이아웃인 ScalableLayout의 base_width를 만큼만 wrap이 될 수 있는 방법은 없는지.. 궁금합니다.

그리고 끝에 말줄임표(...)를 보여주기위해 maxlines와 ellipsize와 같이 사용하면 말줄임표가 표시되지 않는데, 이건 wrapcontent의 특성상 어쩔 수 없는 부분이 맞는지요~

wrapContent 기능 관련해서 질문 있습니다.

TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
sl:scale_height="55"
sl:scale_left="50"
sl:scale_textsize="42"
sl:scale_top="1220"
sl:scale_width="950"
sl:textview_wrapcontent_direction="bottom"
sl:textview_wrapcontent_movesiblings="true"
sl:textview_wrapcontent_resizesurrounded="true"

위 텍스트 뷰는 리스트의 항목을 클릭해서 넘어가 자세한 정보를 보여주는 화면에서 사용 하고 있습니다.

어플을 처음 키고 리스트 항목을 클릭해 화면에 들어가면 뷰가 늘어나 있지만

두번째 부터는 뷰가 늘어나있지않고 첫번째 줄만 보여줍니다.

혹시 왜 이런 현상이 일어나는지 원인을 알 수 있을까요??

Center of ScalableLayout

Hi Ssomai,
Thank for your library.
I have a question. In the ScalableLayout, how can we put a view in the center of this layout?
For example, in the scalable layout, I have 3 view: PreviousButton ---- TextView -----NextButton
The content of textview is changed dynamically. How to ensure this text is alway the center of the layout?
(Like RelaytiveLayout)
Thank

set widhth and height to Match parent

ScalableLayout sl = new ScalableLayout(this, 400, 200);

here how can i make the 400,600 to match parent if the scalable layout
is inside a linear Layout..?

중앙정렬에 대해

<com.littlefox.mp4enc.view.ScalableLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    sl:scale_base_height="800"
    sl:scale_base_width="1280">

    <ProgressBar
        android:id="@+id/pb_player"
        style="?android:attr/progressBarStyleInverse"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:indeterminate="true"
        android:visibility="visible"
        sl:scale_width="120"
        sl:scale_height="120"
        sl:scale_left = "640"
        sl:scale_top = "370"
        />
</com.littlefox.mp4enc.view.ScalableLayout>

이러한 코드로 폰과 태블릿 중앙에 프로그래스를 위치시키려하는데

폰과 태블릿이 좀 어긋납니다. 위치가

폰은 겔럭시 S4 (1920 x 1280) 을 사용하였으며
태블릿은 겔럭시 노트 프로 10.1 (2560 x 1600) 을 사용하였습니다.

폰 위치를 맞췃는데 태블릿 위치가 좀 중앙에서 오른쪽 밑으로 치우칩니다.
어떻게 수정하면 될까요?

TextSwitcher를 활용할 수는 없을까요?

TextSwitcher를 ScalableLayout에서 사용해보려고 하는데, 배치하는 것은 문제가 없지만, text size를 정해 주려고 하면, TextSwitcher 안에 있는 TextView의 text size를 바꿔야 하는데, 이 TextView가 ScalableLayout에 속해있지 않는다는 에러가 뜨는군요.

TextSwitcher의 text size도 ScalableLayout을 통해 바꿀 수 있을까요?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.