Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

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

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

06.01.2014, 11:36. Просмотров 1922. Ответов 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();
    }
        }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2014, 11:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Форматирование текста и действие по нажатию кнопки назад (Программирование Android):

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

Textview. Изменение текста по нажатию кнопки не происходит - Программирование Android
Добрый день. Подскажите как же реализовывается подобное : в методе onCreat получаем интент с id выбранного элемента на предыдущей...

Alert Dialog закрывается при нажатии кнопки Назад - Программирование Android
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setCancelable(false); Диалог все равно закрывается,...

Как восстановить значения при открытии приложения после нажатия кнопки назад - Программирование Android
Как гарантированно вызвать onSaveInstanceState. Столкнулся с такой ситуацией. Сохраняю значения для перезагрузки приложения. Если телефон...

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

Изменение размера текста кнопки вместе с размером самой кнопки? - Программирование Android
Есть 100500 кнопок, нужно имитировать их нажатие. делаю это через селекторы и android:state_pressed но, текст таким образом не...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
VEINHORN
543 / 92 / 22
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 11:44 #2
correcеt, покажите код первой активности.
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();// Завершить текущую активность.
 
                 }
          });
 
 
    }
}
VEINHORN
543 / 92 / 22
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 11:48 #4
correcеt, если вы хотите чтобы предыдущая активность открывалась после нажатия кнопки назад во второй активности, уберите строчку
Java
1
finish();// Завершить текущую активность.
в первой активности. Тогда она останется в "back stack". По умолчанию, метод
Java
1
public void onBackPressed ()
завершает текущую активность, если вам кроме этого ничего не надо, не обязательно переопределять этот метод.
Документация
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 11:59  [ТС] #5
С активностями разобрался.
А с форматированием текста можете,что подсказать?
VEINHORN
543 / 92 / 22
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 12:01 #6
По поводу не выравнивается, не совсем понимаю что вы имеете ввиду. Объясните, может помогу.
Миниатюры
Форматирование текста и действие по нажатию кнопки назад  
correcеt
-1 / 3 / 1
Регистрация: 20.04.2011
Сообщений: 412
06.01.2014, 12:05  [ТС] #7
VEINHORN,
как мне текст выровнять по ширине экрана?(Т.е как в ворд)
в html я так делал <p align="justify">Текст</p>
как тут это реализовать
VEINHORN
543 / 92 / 22
Регистрация: 16.12.2011
Сообщений: 317
06.01.2014, 12:18 #8
В разметке нет атрибутов, позволяющих такое сделать, но вы можете использовать вот эту библиотеку для этого. Она очень простенькая.
Библиотека
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 минуту
Решил проблему.

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




Не могу понять еще одной детали, если у меня много текста, то мне,что его в строчку весь вставлять и писать?
Или же можно в столбик?
VEINHORN
543 / 92 / 22
Регистрация: 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 .

Можно писать в строчку. Он сам выровняется.
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
YuraAAA
1571 / 1313 / 270
Регистрация: 25.10.2009
Сообщений: 3,432
Записей в блоге: 2
06.01.2014, 20:51 #12
Цитата Сообщение от correcеt Посмотреть сообщение
TextViewEx txtViewEx = (TextViewEx) findViewById(R.id.textViewEx)
измените на
Java
1
textViewEx = (TextView) findViewById(R.id.textViewEx)
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 минут
Все понятно.
На андройде нет возможности выровнять текст по ширине.
VEINHORN
543 / 92 / 22
Регистрация: 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"/>
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2014, 13:31
Привет! Вот еще темы с ответами:

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

Выключение экрана по нажатию кнопки - Программирование Android
Необходимо выключить экран по нажатию кнопки. Пробовал KeyguardManager, но метод KeyguardLock зачеркивается в android studio. Пробовал...

Закрыть активити по нажатию кнопки - Программирование Android
Есть код Куда прописать код чтобы я после нажатие кноки отправил данные и вернулся на MainActivity.class p.s. данные отправляет...

Смена фото по нажатию кнопки - Программирование Android
Здравствуйте. Я изучаю програмирование Android не очень давно. Хочу Сделать приложение, которое меняет фото по нажатию кнопки. Как это...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.01.2014, 13:31
Ответ Создать тему
Опции темы

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