Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.86
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
#1

Форматирование текста и действие по нажатию кнопки назад - Программирование Android

06.01.2014, 11:36. Просмотров 2102. Ответов 13
Метки нет (Все метки)

День добрый!

Столкнулся с такой проблемой:
-есть текст и его надо выровнять по ширине т.е не центр а как в ворде.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
   android:background="#FFFFFF"
   >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="2pt"
        android:layout_marginRight="2pt"
        android:layout_marginTop="2pt"
        android:layout_marginBottom="2pt"
         android:textColor="#000000"
         android:textSize="20sp"
         android:lineSpacingMultiplier="0.8"
         android:gravity="center"   //знаю,что текст будет по центру,но он не выравнивается
          android:text="@string/Secondactivity" />
 
</ScrollView>
У меня 2-е активности. В первой активности я нажимаю на текст происходит переход на вторую активность и когда пользователь на телефоне нажимает кнопку назадто приложение ничего не делает,а должно переходить обратно в первую активность,а если пользователь нажмет еще раз назад то приложение закрывается.
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package com.example.skazki;
 
import android.app.Activity;
import android.os.Bundle;
 
public class Secondactivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main_2);
    }
    @Override
    public void onBackPressed() { 
        super.onBackPressed();
    }
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2014, 11:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Форматирование текста и действие по нажатию кнопки назад (Программирование Android):

Переход на нужный фрагмент по нажатию кнопки назад
Здравствуйте, у меня есть 2 фрагмента со списком ListFragment (выбираю...

Textview. Изменение текста по нажатию кнопки не происходит
Добрый день. Подскажите как же реализовывается подобное : в методе onCreat...

Alert Dialog закрывается при нажатии кнопки Назад
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());...

Действие без нажатия кнопки
Добрый день Нужно реализовать следующее Поле поиска Поле ответа С полем...

Сделать общие экранные кнопки (аналог экранных кнопок назад, домой, меню)
Прежде чем создать тему изрядно покопался, но ничего не нашел. Может, потому...

Как восстановить значения при открытии приложения после нажатия кнопки назад
Как гарантированно вызвать onSaveInstanceState. Столкнулся с такой ситуацией....

13
VEINHORN
543 / 92 / 49
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 11:44 #2
correcеt, покажите код первой активности.
0
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 11:47  [ТС] #3
Цитата Сообщение от VEINHORN Посмотреть сообщение
correcеt, покажите код первой активности.
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package com.example.skazki;
 
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.TextView;
 
public class MainActivity extends Activity {
    public TextView volktext;
    @Override
    public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
 
          final TextView volktext = (TextView) findViewById(R.id.volktext);
          volktext.setOnClickListener(new View.OnClickListener() {
                 public void onClick(View v) {
                       
       Intent i = new Intent(MainActivity.this, Secondactivity.class);
                
        
       startActivity(i);// Запускаем новую Активность.   
 
 
       finish();// Завершить текущую активность.
 
                 }
          });
 
 
    }
}
0
VEINHORN
543 / 92 / 49
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 11:48 #4
correcеt, если вы хотите чтобы предыдущая активность открывалась после нажатия кнопки назад во второй активности, уберите строчку
Java
1
finish();// Завершить текущую активность.
в первой активности. Тогда она останется в "back stack". По умолчанию, метод
Java
1
public void onBackPressed ()
завершает текущую активность, если вам кроме этого ничего не надо, не обязательно переопределять этот метод.
Документация
1
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 11:59  [ТС] #5
С активностями разобрался.
А с форматированием текста можете,что подсказать?
0
VEINHORN
543 / 92 / 49
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 12:01 #6
По поводу не выравнивается, не совсем понимаю что вы имеете ввиду. Объясните, может помогу.
0
Миниатюры
Форматирование текста и действие по нажатию кнопки назад  
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 12:05  [ТС] #7
VEINHORN,
как мне текст выровнять по ширине экрана?(Т.е как в ворд)
в html я так делал <p align="justify">Текст</p>
как тут это реализовать
0
VEINHORN
543 / 92 / 49
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 12:18 #8
В разметке нет атрибутов, позволяющих такое сделать, но вы можете использовать вот эту библиотеку для этого. Она очень простенькая.
Библиотека
1
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 17:14  [ТС] #9
VEINHORN,
что-то не могу я -это сделать.

main.xml
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
   android:background="#FFFFFF"
   tools:context=".Secondactivity">
   
 
    <com.textjustify.TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="2pt"
        android:layout_marginRight="2pt"
        android:layout_marginTop="2pt"
        android:layout_marginBottom="2pt"
         android:textColor="#000000"
         android:textSize="20sp"
         android:lineSpacingMultiplier="0.8"
         android:gravity="center"
          android:text="@string/Secondactivity" />
 
</ScrollView>
activity

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package com.example.skazki;
 
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
 
public class Secondactivity extends Activity {
    public TextView TextView;
        @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main_2);
        
        TextView txtViewEx = (TextView) findViewById(R.id.TextView);
        txtViewEx.setText("Insert your content here", true); // true: enables justification
    }
    @Override
    public void onBackPressed() { 
        super.onBackPressed();
    }
        }
В activity 14,15 строки подчеркивает красным(ошибки)

Settext-красным и TextView

Добавлено через 1 час 1 минуту
Решил проблему.

Ответ тут: ОТВЕТ




Не могу понять еще одной детали, если у меня много текста, то мне,что его в строчку весь вставлять и писать?
Или же можно в столбик?
0
VEINHORN
543 / 92 / 49
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 17:28 #10
correcеt, вы забыли дописать:
Java
1
TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx);
и
XML
1
2
3
4
<com.textjustify.TextViewEx
        android:id="@+id/textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
Тоесть Ex в конце TextView .

Можно писать в строчку. Он сам выровняется.
0
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 19:42  [ТС] #11
VEINHORN,
Цитата Сообщение от VEINHORN Посмотреть сообщение
TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx);
TextViewEx-подчеркивает красным

Добавлено через 2 часа 10 минут
Вот код.:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package com.example.skazki;
 
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
import android.widget.TextView;
import android.view.View;
 
public class Secondactivity extends Activity {
    public TextView textViewEx;
        @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main_2);
       
         TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx);
        txtViewEx.setText("Привет", true); // true: enables justification
    }
    @Override
    public void onBackPressed() { 
        super.onBackPressed();
    }
        }
Javascript
1
TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx);

Ошибка: TextViewEx cannot be resolved to a type
0
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
06.01.2014, 20:51 #12
Цитата Сообщение от correcеt Посмотреть сообщение
TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx)
измените на
Java
1
textViewEx = (TextView) findViewById(R.id.textViewEx)
0
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 22:21  [ТС] #13
YuraAAA,
Javascript
1
txtViewEx.setText("Привет", true);
Javascript
1
txtViewEx
-теперь такая ошибка: cannot be resolved

исправил на -это:
Javascript
1
textViewEx.setText("Привет", true);
Теперь подчеркивает setText
Ошибка:
The method setText(CharSequence, TextView.BufferType) in the type TextView is not applicable for the arguments (String, boolean)

Добавлено через 1 час 16 минут
Все понятно.
На андройде нет возможности выровнять текст по ширине.
0
VEINHORN
543 / 92 / 49
Регистрация: 16.12.2011
Сообщений: 317
08.01.2014, 13:31 #14
correcеt, сегодня добавил эту библиотеку в свой проект, у меня все работает как надо. Проверьте, может вы неправильно в xml разметке что-то добавили. Должно быть так
Java
1
TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx);
и примерно так
XML
1
2
3
4
5
6
<com.textjustifylibrary.TextViewEx
                    android:layout_marginLeft="15dp"
                    android:layout_marginRight="15dp"
                    android:id="@+id/your_id"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"/>
0
08.01.2014, 13:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2014, 13:31
Привет! Вот еще темы с решениями:

Изменение размера текста кнопки вместе с размером самой кнопки?
Есть 100500 кнопок, нужно имитировать их нажатие. делаю это через селекторы...

Авторизация по нажатию кнопки
Привет всем! В Android Studio создаю приложение с Login Activity. Там есть...

ListView после обновлений данных также обратно через нажатие кнопки вернуть старые данные назад
Я работаю с ассортиментом для продаж ,которого JSON файла сохраняю локально.В...

Вызов телефона, по нажатию кнопки
Уважаемые, подскажите, как осуществить вызов приложения &quot;Телефон&quot; что бы...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru