Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587

Ширина TextView в зависимости от наполнения его текстом

26.02.2013, 23:13. Показов 5086. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть виджет. На нем TextView. В нем строки разделенные символом новой строки. Пока, я чисто по кол-ву символов определяю сколько уместилось и обрезаю строку дополняя троеточием. Но добавил настройки величины шрифта, а теперь как то сложно стало настраивать. Может можно поределять кол-во символов которые могут поместиться в textView? Спасибо. Хотя бы идея...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.02.2013, 23:13
Ответы с готовыми решениями:

ширина блока в зависимости от его содержимого. как?
<div class="head">"Современные технологии"</div> что надо сделать для .head что бы длина блока была не на весь род. элемент, а как длина...

Высота страницы в зависимости от наполнения
нужно чтоб высота страницы изменялась в зависимости от наполнения дива,т.к. остальные страницы будут идти по шаблону,то каждой странице...

Button.Enabled в зависимости от наполнения richTextBox
ну у меня проблема решите пожалуйста Когда 1 слова появлется в richTextBox1 кнопка enabled = true; а когда потом удаляешь все словы в...

9
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
26.02.2013, 23:20
а зачем вам это определять? вам нужен перенос на другую "страницу" того, что не вместилось?
0
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587
26.02.2013, 23:33  [ТС]
Цитата Сообщение от V0v1k Посмотреть сообщение
а зачем вам это определять? вам нужен перенос на другую "страницу" того, что не вместилось?
Ну вот смотрите, есть определенного размера область. В ней написана строка длиной 100 символов, а следующая строка пусть 50. Помещается в этой области всего 45 символов. Это все при размере шрифта 12sp. Вот я и обрезал строки по 44 символа и добавлял троеточие. Сейчас решил шрифт сделать настраиваемым по размеру. Допустим он стал 16sp. Теперь в длину уместится не 45, а 35 ... Все это можно в настройках сделать и получить приемлемый результат, но как то уж все тупо...хочется автоматизьма ...
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
26.02.2013, 23:35
android:ellipsize не подходит?
0
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587
26.02.2013, 23:39  [ТС]
Цитата Сообщение от V0v1k Посмотреть сообщение
android:ellipsize не подходит?
в версиях андроида от 3 и выше перестал работать. Как будто его нет вовсе.
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
26.02.2013, 23:40
при рисовании текста на канвасе можно получить его размеры, других способов не знаю.
0
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587
26.02.2013, 23:50  [ТС]
Цитата Сообщение от V0v1k Посмотреть сообщение
при рисовании текста на канвасе можно получить его размеры, других способов не знаю.
Я тоже так хотел покодовать. На Дельфи делал такую функцию..попробую переложить на яву. Спасибо за участие.
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
27.02.2013, 00:37
ах да, вспомнил что для мультилайна какой-то костыль писал, погуглите - https://www.google.com.ua/sear... e&ie=UTF-8

Добавлено через 38 минут
вроде по такому семплу делал когда-то давно

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
final TextView title = (TextView)findViewById(R.id.text);
        title.setText("A really long text");
        ViewTreeObserver vto = title.getViewTreeObserver();
        vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
 
            @Override
            public void onGlobalLayout() {
                ViewTreeObserver obs = title.getViewTreeObserver();
                obs.removeGlobalOnLayoutListener(this);
                if(title.getLineCount() > 3){
                    Log.d("","Line["+title.getLineCount()+"]"+title.getText());
                    int lineEndIndex = title.getLayout().getLineEnd(2);
                    String text = title.getText().subSequence(0, lineEndIndex-3)+"...";
                    title.setText(text);
                    Log.d("","NewText:"+text);
                }
 
            }
        });
1
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587
28.02.2013, 15:50  [ТС]
Никак не пойму, как мне получить доступ к TextView через RemoteViews?
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
28.02.2013, 16:03
вроде нельзя, делайте кастомный TextView и в него запихайте всю нужную логику.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.02.2013, 16:03
Помогаю со студенческими работами здесь

В зависимости от позиции Spinner-а менять текст в TextView
Здравствуйте, только познаю андроид, так что сильно не ругайте. Создал спинер, его задача в зависимости от позиции менять текст в...

Ширина input в зависимости от содержимого
Можно ли сделать чтоб ширина(width) input автоматически подстраивалась под длину строки от в среднем это будет 10 - 50 симвлов. Да можно...

ширина pre в зависимости от содержимого
всем привет как сделать так, чтобы ширина pre была равна содержимому. я задаю фон pre, она растягивается т.е. сейчас имею: ...

Ширина контейнера в зависимости от содержимого
Имеем блок <div class="stepHeader"> <h3>Хидэр</h3> <h5>субхидэр</h5> </div> .stepHeader { ...

Ширина таблицы в зависимости от разрешения экрана
есть страница авторизации. В ней формируется таблица, собственно, вот таким html кодом <br/><br/><br/> <table...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru