Страница 5 из 14

Re: Урок 21. Создание и вызов Activity

Добавлено: 14 мар 2013, 18:53
neoksi
shatl
03-14 19:28:51.943: E/AndroidRuntime(21391): android.content.ActivityNotFoundException: Unable to find explicit activity class {rm.example.q/rm.example.q.Two}; have you declared this activity in your AndroidManifest.xml?
Говорит однако, что не может найти нужный класс, так как похоже он не задекларирован в манифесте твоего приложения.

Re: Урок 21. Создание и вызов Activity

Добавлено: 15 мар 2013, 13:48
shatl
Непонятно... вообщем я два раза прописывал в манифесте по разному, сначала через вкладку интент, приложение запустилось, но выдает лог который я вчера выложил и второй раз прописал класс не через интент, приложение вообще не запустилось наисало только [2013-03-15 14:37:06 - Q] Installation error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED
[2013-03-15 14:37:06 - Q] Please check logcat output for more details.
[2013-03-15 14:37:06 - Q] Launch canceled!
А в логе вообще ни чего не выдает, подскажите в чем может быть проблема?

Re: Урок 21. Создание и вызов Activity

Добавлено: 15 мар 2013, 13:59
rezak90
эклипс вставит вам бяку в манифест если будете пользоватся формачками интента и в итоге манифест уже будет не красивый

Re: Урок 21. Создание и вызов Activity

Добавлено: 15 мар 2013, 17:56
shatl
Переписал всё с нуля, второй экран включился, но он ни чего не показывает, хотя установленна кнопка, пишет только это 03-15 18:53:32.706: E/SpannableStringBuilder(10485): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
03-15 18:53:32.706: E/SpannableStringBuilder(10485): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
о чем он? вот код второго экрана <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
PS ААа.. я понял не прописал второй экран ы... усё работает спс.

Re: Урок 21. Создание и вызов Activity

Добавлено: 12 июн 2013, 00:03
Mr. Nobody
Здравствуйте, не могу понять как создать второй activity, мне кажется, что у меня какой-то более новый eclipse и структура немного изменилась.
У меня вот так(скрин)

Не могу сделать вот это
Итак, если мы хотим создать еще одно Activity, надо создать класс и прописать Activity в AndroidManifest.xml. Чтобы создать класс, жмем правой кнопкой на package ru.startandroid.develop.p0201twoactivity в папке проекта и выбираем New -> Class.

Re: Урок 21. Создание и вызов Activity

Добавлено: 12 июн 2013, 00:12
Foenix
и в чем загвоздка?

Re: Урок 21. Создание и вызов Activity

Добавлено: 12 июн 2013, 00:34
Mr. Nobody
В уроке тыкают на пакет, которого у меня нет
Изображение

Re: Урок 21. Создание и вызов Activity

Добавлено: 12 июн 2013, 00:34
rezak90
Mr. Nobody
Итак, если мы хотим создать еще одно Activity, надо создать класс и прописать Activity в AndroidManifest.xml. Чтобы создать класс, жмем правой кнопкой на package ru.startandroid.develop.p0201twoactivity в папке проекта и выбираем New -> Class.
В Вашем случае это будет звучать так, так как у Вас другое имя пакета:
Итак, если мы хотим создать еще одно Activity, надо создать класс и прописать Activity в AndroidManifest.xml. Чтобы создать класс, жмем правой кнопкой на package com.example.app23 в папке проекта и выбираем New -> Class.
P.S. кстати по Вашему скрину видно что у Вас проект открыт не как Android

Re: Урок 21. Создание и вызов Activity

Добавлено: 12 июн 2013, 00:36
Mr. Nobody
ааа т.е. мне надо на app23 тыкать, а почему у меня иконка простой папки? (это ввело в заблуждение))
Спасибо, вроде понял

Re: Урок 21. Создание и вызов Activity

Добавлено: 24 июн 2013, 12:48
Дроныч_07
Здравствуйте damager82! Спасибо за ваши уроки! Очень понятно и доходчиво написано.

Хочу добавить, что Activity можно создать так: File->New->Other...->Android->Android Activity
Появится визард, как при создании проекта. Думаю, это быстрее, чем создавать 2 файла и редактировать манифест.

Re: Урок 21. Создание и вызов Activity

Добавлено: 24 июн 2013, 13:53
Foenix
Визарды много чего от себя добавляют в проект в самых неожиданных местах. Новичку в этом сложно разобраться, по-моему. Интересно, как часто ими вообще пользуются?

Re: Урок 21. Создание и вызов Activity

Добавлено: 01 июл 2013, 20:07
st1lus@
Столкнулся с такой проблемой: есть основной активити, на нем две кнопки, одна ведет на активити1, другая на активити2. Так вот, нажимая на кнопку 1, появляется активити 1, все нормально. Но нажимая кнопку 2,появляется снова активити 1, а только по нажатию назад активити 2.
Это код мейн активити, ссылаюсь на то, что в нем что то не так:

Код: Выделить всё

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener {

  Button button2;
  Button button3;
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

  button2 = (Button) findViewById(R.id.button2);
  button3 = (Button) findViewById(R.id.button3);
  button3.setOnClickListener(this);
  button2.setOnClickListener(this);
  }
  @Override
  public void onClick(View v) {
    switch (v.getId()) {
    case R.id.button2:
Intent intent = new Intent(this, set.class);
startActivity(intent); case R.id.button3:
	Intent intent1 = new Intent(this, info.class);
	startActivity(intent1);    	
      break;
    default:
      break;
}}
}

Re: Урок 21. Создание и вызов Activity

Добавлено: 01 июл 2013, 20:18
Mikhail_dev
Забыл break; после
Intent intent = new Intent(this, set.class);
startActivity(intent);

надо
Intent intent = new Intent(this, set.class);
startActivity(intent);
break;

иначе дальнейший код будет выполняться. советую глянуть switch case чуть более детально

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 июл 2013, 12:37
Rumlin
Можно выложить в тему содержимое AndroidManifest.xml ? - делаю уроки теперь в Android Studio и в этом уроке где то ошибаюсь при в ручном редактировании AndroidManifest.

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 июл 2013, 13:20
anber
Rumlin писал(а):Можно выложить в тему содержимое AndroidManifest.xml ? - делаю уроки теперь в Android Studio и в этом уроке где то ошибаюсь при в ручном редактировании AndroidManifest.
можно. В тег Code

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 июл 2013, 13:45
Foenix
Rumlin писал(а):Можно выложить в тему содержимое AndroidManifest.xml ? - делаю уроки теперь в Android Studio и в этом уроке где то ошибаюсь при в ручном редактировании AndroidManifest.
Я именно этот урок не делала, поэтому манифеста не могу выложить.
Вот ссылка на общую структуру http://developer.android.com/guide/topi ... intro.html
там можно посмотреть что куда вписывать и в каком теге

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 июл 2013, 14:35
anber
Foenix писал(а):
Rumlin писал(а):Можно выложить в тему содержимое AndroidManifest.xml ? - делаю уроки теперь в Android Studio и в этом уроке где то ошибаюсь при в ручном редактировании AndroidManifest.
Я именно этот урок не делала, поэтому манифеста не могу выложить.
Вот ссылка на общую структуру http://developer.android.com/guide/topi ... intro.html
там можно посмотреть что куда вписывать и в каком теге
Вот это я туплю...Ты хочешь чтобы кто-нибудь вложил итоговый манифест к этому примеру?

у меня тоже нет эклипсы, но на вскидку он должен выглядеть примерно так, хотя я могу где-то немного ошибиться:

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="ru.startandroid.develop.p0211twoactivity"
          android:versionCode="1"
          android:versionName="1.0">
  <uses-sdk android:minSdkVersion="7"/>
  <application android:label="@string/app_name">

    <activity android:name="MainActivity"
              android:label="@string/app_name">
      <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
      </intent-filter>
    </activity>

    <activity android:name=".ActivityTwo">

    </activity>

  </application>
</manifest> 

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 июл 2013, 15:36
Rumlin
Да, мне нужно увидеть то что там должно быть. Т.к. где то ошибся с работой в уме. Eclipse не охота инсталить ради этого.

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 июл 2013, 15:46
Rumlin
Спасибо. Я просто перемудрил.
Чем мне нравится Android Studio - пишет код вместо меня, только выбирай варианты.
В этом фрагменте сразу нашел ошибку и предложил исправить:

Код: Выделить всё

 </activity> 
 
    <activity android:name=".ActivityTwo"> 
 
    </activity> 
Правильно : <activity android:name=".ActivityTwo" />
Ну и сам манифест для тех кто будет учить Android Studio по этим урокам:

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="ru.startandroid.develop.p0211twoactivity"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="16" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="ru.startandroid.develop.p0211twoactivity.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".ActivityTwo" />
    </application>

</manifest>

Re: Урок 21. Создание и вызов Activity

Добавлено: 08 авг 2013, 18:47
foomkin
Сделал все по уроку - получилось, добавил еще две активити вызываемые из мэинактивити, т.е. к активити ту добавил еще две.
В мэин активити прописал их как:
public void onClick(View v) {
switch (v.getId()) {
case R.id.btnSams:
Intent intent = new Intent(this, SamsActivity.class);
startActivity(intent);

case R.id.btnHtc:
Intent intent2 = new Intent(this, HtcActivity.class);
startActivity(intent2);

case R.id.btnLg:
Intent intent3 = new Intent(this, LgActivity.class);
startActivity(intent3);

Все работает, только в приложении при переходе на них показывает неправильное содержимое их. Причем в одной, все 3 содержимых по очереди, в другой две, в третьей 1 и то не та. Что в коде не так? Подозреваю, что с интентами надо было поступать как то иначе чем просто обозвать их по разному