안드로이드에서 타원 크기는 무엇을 의미합니까?


199

나는를 추가 한 EditText내 레이아웃 및 힌트를 추가하고, 수평 중심으로했다.

응용 프로그램을 실행할 때 힌트가 보이지 않았습니다. 내가해야 발견 ellipsize의 값을 TextViewstart:

<EditText
    android:id="@+id/number1EditText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ellipsize="start"
    android:ems="10"
    android:gravity="center_horizontal"
    android:hint="@string/hint1" />

Android 설명서에서 다음을 읽습니다.

설정하면보기보다 긴 단어가
중간에서 끊어지지 않고 줄임표로 표시됩니다.

문제는 ellipsize사전에서 찾을 수 없다는 것입니다. 아무도 우리가 ellipsize속성 별로 얻을 수있는 이점을 설명 할 수 있습니까 ? 그리고 차이점은 무엇인가 start, end, middle?


친절하게 업데이트 된 답변을 참조하십시오.
Rinkal Bhanderi 19시 05 분

2
btw : 실제 단어 "ellipsized"가 만들어집니다. "명사 동사"라고하며 컴퓨터 전문 용어를 만드는 일반적인 방법입니다. 명사 "알파벳"은 내가 알고 있다고 가정하고, "만들다"를 의미하는 "-ize"엔딩을 추가하여 동사로 만들어 졌으므로 "타원"은 "타원을 어떤 것".
Michael Edenfield 2016 년

4
오래된 철자 실수로 수정되지 않았습니다. 용어는 실제로 "줄임표"여야합니다. 타원은 초점 중 하나에서 곡선의 임의의 점까지 직선이 그려 지도록 두 초점을 둘러싼 평면의 곡선입니다. 줄임표는 세 개의 점입니다.
radley

ellipseSize의 문서에 여전히 설명이 없습니다.
Talha

여전히 나를 위해 단어를 반으로 자릅니다. 한 조각으로 남아있는 단어가 필요합니다. 젠장
filthy_wizard

답변:


388

여기에서 설명서를 찾을 수 있습니다 .

요구 사항에 따라 옵션에 따라 시도 할 수 있습니다.

줄임표 (nelipsize ), 신 로그 론 은 생략 된 비트 를 나타 내기 위해 줄임표 (즉, 3 개의 점 ...또는보다 일반적으로 합자 )를 사용하여 텍스트를 줄이는 것을 의미 한다.

원래 값 pf 텍스트보기가 aaabbbccc 이고보기 내부에 적합 하다고 가정 하십시오.

start출력은 다음과 같습니다. ... bccc

end의 출력은 다음과 같습니다.

middle의 출력은 다음과 같습니다 : aa ... cc

marquee의 출력은 다음과 같습니다 : aaabbbccc 자동 슬라이딩 오른쪽에서 왼쪽


감사. 그러나 나는 이미 그것을 읽었습니다. 이 단어의 의미를 찾고있는 "엘리 프라이즈"라는 단어를 사용합니다. 그 단어는 그 정의에 사용될 수 없습니다 !! 더 설명이 필요하세요?
Hamzeh Soboh 18시 49 분

60

내 경험상 Ellipsis는 두 가지 속성이 설정되어있는 경우에만 작동합니다.

android:ellipsize="end"
android:singleLine="true"

textview의 너비에 대해서는 wrap_content 또는 match_parent가 둘 다 양호해야합니다.


2
실제로 android:singleLineAPI 레벨 3부터 사용되지 않으므로 대신을 사용하십시오 android:maxLines. 참고 :> singleLine 및 inputType이 모두 제공되면 inputType 플래그가 singleLine의 값을 대체합니다. R.attr.html # singleLine
Filipe Bezerra de Sousa

1
@AlbertoGaona android : ellipsize = "start"및 android : maxLines = "2"(또는 그 이상) 인 경우 작동하지 않는 것으로 나타났습니다. 텍스트가 너무 길어도 처음에는 점이 보이지 않습니다.
ka3ak

17

How to Add an ellipsis in a TextView

android : ellipsize는 API Level 1에 추가되었습니다. 줄임표는 연속 된 3 개의 마침표입니다. (...).

Xml에서

 <TextView
       ....
       android:text="Hi I am Amiyo,you can see how to ellipse works."
       android:ellipsize = "end"  
   />

이 시점에서 새 텍스트를 입력하면 기본적으로 TextView가 자동으로 확장되도록 설정되어 줄임표가 표시되지 않습니다. 어떤 식 으로든 TextView를 제한해야합니다. 이렇게 TextView a scrollHorizontally, minLines, or maxLines하면 줄임표가 표시되도록 추가 할 수 있습니다 .

타원을 만들려면 :

    at the end: this is how it would...     
   use: android:ellipsize = "end"

 in the middle: this is ...how it would
use: android:ellipsize = "middle"

 at the start: ...this is how it would
use: android:ellipsize = "start"

 to have no ellipse
use: android:ellipsize = "none"

참고하시기 바랍니다 :

 Do not use android:singeLine = "true", it is deprecated.
android:maxLines = "1" will not display the three dots (...)
android:lines = "1" will not display the three dots (...)

자세한 내용은 여기를 방문하십시오

http://developer.android.com/reference/android/widget/TextView.html#attr_android%3aellipsize


10

줄임표는 연속 세 기간입니다 ...

TextView는 모든 텍스트를 표시하기 위해 확장 할 수없는 경우 줄임표를 사용합니다. ellipsized필요한 경우이 속성 은 세 점의 위치를 ​​설정합니다.


5

본문:

 This is my first android application and
 I am trying to make a funny game,
 It seems android is really very easy to play.

위의 내용이 텍스트라고 가정하고 ellipsizestart속성을 사용하는 경우 다음 과 같이 표시됩니다

This is my first android application and
...t seems android is really very easy to play.

end속성

 This is my first android application and
 I am trying to make a funny game,...

3

다음은 ConstraintLayout에서 더 이상 사용되지 않고 ellipsize가 작동 하는 방법에 대한 예입니다 android:singleLine="true".

<TextView
   android:layout_width="0dp"
   android:layout_height="wrap_content"
   android:textSize="13sp"
   android:ellipsize="end"
   android:maxLines="2"
   app:layout_constraintEnd_toEndOf="parent"
   app:layout_constraintStart_toStartOf="parent"
   tools:text="long long long long long long text text text" />

한 줄로되어있는 텍스트가 있으면 maxLines 를 1 로 변경하십시오 .


이 솔루션으로 문제를 해결해 주셔서 감사합니다. 키는 android:layout_width="0dp"대신에 android:layout_width="wrap_content"있습니다. 이것은를 사용하기 때문에 적용 가능합니다 ConstraintLayout. 또한 여기서 논의 stackoverflow.com/a/48149405/2848676
마이클 Osofsky

1

참고 : 텍스트가 컨테이너 상자보다 커야 다음이 선택됩니다.

 android:ellipsize="marquee"    

1

텍스트를 편집하려면이 속성을 설정하십시오. Elipsize가 텍스트 편집 비활성화와 함께 작동 중입니다.

android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
android:singleLine="true"
android:editable="false"

또는 setKeyListener (null);


위에서 언급 한 모든 속성 및 편집 가능한 속성을 제외한 setKeyListener (null)
무바라크

0

너비가 고정되어 있으면 줄임표를 사용하면 텍스트가 자동으로 잘리고 끝 부분에 줄임표가 표시됩니다.

layout_width를 wrap_content & match_parent로 설정하면 작동하지 않습니다.

android:width="40dp"
android:ellipsize="end"
android:singleLine="true"
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.