Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Andrew9
0 / 0 / 0
Регистрация: 28.04.2013
Сообщений: 95
#1

Новую строку, сформированную из текста в поле inputText и сдвига inputShift вывести в editResult

19.06.2014, 03:17. Просмотров 969. Ответов 4
Метки нет (Все метки)

Всем привет, начал делать приложение и столкнулся с проблемой краша. Это первое приложение, прошу помочь разобраться.
Смысл в том что бы новая строка сформированная из текста в поле inputText и сдвига inputShift вывелась в editResult

main.xml
XML
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="encryption.encrypt.enc.MainActivity">
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="show result"
        android:id="@+id/showResultButton"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="43dp" />
 
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/inputText"
        android:layout_alignParentTop="true"
        android:layout_marginTop="58dp"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:inputType="text" />
 
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/editResult"
        android:layout_below="@+id/inputShift"
        android:layout_marginTop="65dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />
 
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/inputShift"
        android:layout_marginTop="52dp"
        android:layout_below="@+id/inputText"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:inputType="numberDecimal" />
 
 
</RelativeLayout>
код MainActivity
Java
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import android.app.Activity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
 
 
public abstract class MainActivity extends Activity implements View.OnClickListener {
 
    static String alphabet = "abcdefghijklmnopqrstuvwxyz";
 
    EditText inputText;
    EditText inputShift;
    EditText editResult;
 
    Button showResultButton;
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        inputText = (EditText) findViewById(R.id.inputText);
        inputShift = (EditText) findViewById(R.id.inputShift);
        editResult = (EditText) findViewById(R.id.editResult);
        showResultButton = (Button) findViewById(R.id.showResultButton);
 
        showResultButton.setOnClickListener(this);
 
 
    }
 
    public void onClick(View v) {
 
        String str = String.valueOf(inputText);
 
        char[] newstr = new char[str.length()];
        for (int i = 0; i < str.length(); i++) {
            newstr[i] = str.charAt(i);
        }
 
        int k = Integer.parseInt(String.valueOf(inputShift));
        int a = 26;
 
 
        for (int i = 0; i < str.length(); i++) {
            if (newstr[i] != ' ') {
                k = alphabet.indexOf(str.charAt(i));
 
                if (k > (alphabet.length() - a)) {
                    k = k - alphabet.length();
                }
 
                newstr[i] = alphabet.charAt(k + a);
 
            }
            String n = new String(newstr);
            n = String.valueOf(editResult);
 
 
        }
    }
}
лог краша
Java
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
06-18 19:02:29.350      981-981/encryption.encrypt.enc E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: encryption.encrypt.enc, PID: 981
    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{encryption.encrypt.enc/encryption.encrypt.enc.MainActivity}: java.lang.InstantiationException: can't instantiate class encryption.encrypt.enc.MainActivity
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.InstantiationException: can't instantiate class encryption.encrypt.enc.MainActivity
            at java.lang.Class.newInstanceImpl(Native Method)
            at java.lang.Class.newInstance(Class.java:1208)
            at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2112)
************at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
************at android.app.ActivityThread.access$800(ActivityThread.java:135)
************at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
************at android.os.Handler.dispatchMessage(Handler.java:102)
************at android.os.Looper.loop(Looper.java:136)
************at android.app.ActivityThread.main(ActivityThread.java:5017)
************at java.lang.reflect.Method.invokeNative(Native Method)
************at java.lang.reflect.Method.invoke(Method.java:515)
************at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
************at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
************at dalvik.system.NativeStart.main(Native Method)
06-18 19:02:33.110      981-981/encryption.encrypt.enc I/Process﹕ Sending signal. PID: 981 SIG: 9

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2014, 03:17
Ответы с готовыми решениями:

Проверить на новую строку в табличном поле
Подскажите как проверить на нового пользователя. Есть документ, в нем табличное...

Разбить поле и создать новую строку по условию
ДОброго всем времени суток! Хочу реализовать следующее: 1. имеем таблицу с...

Вводят строку. Найти в ней все слова с буквой "Z" и переместить их в другую строку. Вывести новую строку
Недавно начал изучать этот язык. Было все не плохо, но тут учитель решил...

Перебрасывание текста на новую строку
Здравствуйте. Вопрос как сделать так чтобы третий текст перебрасывался на...

Перенос текста на новую строку
Доброго всем времени суток. Есть форма в последнее поле которой необходимо...

4
Pablito
2665 / 2147 / 729
Регистрация: 12.05.2014
Сообщений: 7,492
Завершенные тесты: 1
19.06.2014, 10:23 #2
public abstract class MainActivity extends Activity implements View.OnClickListener

что здесь делает слово abstract ???
1
Andrew9
0 / 0 / 0
Регистрация: 28.04.2013
Сообщений: 95
19.06.2014, 11:20  [ТС] #3
Спасибо, по началу студии не нравилась добавка implements и единственным предложением это исправить - была добавка - abstract.

Что по коду не так в 47, 62,63 строках ? Они выделяются серым (нигде не используются) а должны быть завязаны на editText поля.
0
Pablito
2665 / 2147 / 729
Регистрация: 12.05.2014
Сообщений: 7,492
Завершенные тесты: 1
19.06.2014, 11:56 #4
вот в таком виде onClick не выдает ошибки, но я не вникал в работу алгоритма, там. в конце точно бред написан надо переделать
Java
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
    @Override
    public void onClick(View v) {
 
        String str = inputText.getText().toString();
 
        char[] newstr = new char[str.length()];
        for (int i = 0; i < str.length(); i++) {
            newstr[i] = str.charAt(i);
        }
 
        int k = Integer.parseInt(inputShift.getText().toString());
        int a = 26;
        for (int i = 0; i < str.length(); i++) {
            if (newstr[i] != ' ') {
                k = alphabet.indexOf(str.charAt(i));
 
                if (k > (alphabet.length() - a)) {
                    k = k - alphabet.length();
                }
 
                newstr[i] = alphabet.charAt(k + a);
 
            }
            String n = new String(newstr);
            n = String.valueOf(editResult);
 
        }
    }
0
Andrew9
0 / 0 / 0
Регистрация: 28.04.2013
Сообщений: 95
19.06.2014, 12:42  [ТС] #5
С начала делалось в еклипсе, там все работает а в студии при привязке к кнопкам возникла проблема.
Алгоритм там "шифр цезаря", сдвиг слова на заданную величину.
0
19.06.2014, 12:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.06.2014, 12:42

Переход на новую строку текста
Проблема наверное очень проста в решении, поэтому прошу ответа. &lt;div style=&quot;...

Перенос текста на новую строку
Здравствуйте. Сейчас пытаюсь наложить текст на изображение, но есть один...

ListView перенос текста на новую строку
Добрый день. Как заставь ListView (List) переносить текс на друю строчку, а...


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

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

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