Fragment_display_message: Моя первая ошибка приложения для Android

Я разрабатываю приложение для мобильных устройств в первый раз

Окружающая среда: Eclipse Kepler, Java 1.7 Backend:

Я выполнил следующие шаги:

1) Установил Android SDK и запустил Android SDK Manager и установил необходимые файлы

2) Установленный плагин ADT Eclipse ADT: https://dl-ssl.google.com/android/eclipse

На этом этапе в некоторых стандартных документах говорилось, что теперь вы должны создать AVD, значок AVD должен появиться на моей панели инструментов, но я не смог найти его нигде.

Теперь я пытаюсь разработать свое первое приложение, как показано на этом сайте: http://developer.android.com/training/basics/firstapp/index.html

Я jus добавляю свои фрагменты кода, как показано ниже:

Main.xml:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > </LinearLayout> 

Strings.xml:

 <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">My First App</string> <string name="edit_message">Enter a message</string> <string name="button_send">Send</string> <string name="action_settings">Settings</string> <string name="title_activity_main">MainActivity</string> <string name="uploading">Uploading…</string> <string name="hello_world">Hello world!</string> <string name="title_activity_display_message">DisplayMessageActivity</string> </resources> 

AndroidManifest.xml:

 <!-- <?xml version="1.0" encoding="utf-8" standalone="no"?> --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.amazon.demo" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="16" android:targetSdkVersion ="20" /> <uses-permission android:name="android.permission.INTERNET" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:allowBackup="true" > <activity android:name=".MainActivity" android:label="@string/title_activity_main" > </activity> <activity android:name=".DisplayMessageActivity" android:label="@string/title_activity_display_message" android:parentActivityName="com.amazon.demo.MainActivity" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.amazon.demo.MainActivity" /> </activity> </application> </manifest> 

MainActivity.java

 public class MainActivity extends ActionBarActivity { public final static String EXTRA_MESSAGE = "com.amazon.demo.MESSAGE"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } public void sendMessage(View view) { Intent intent = new Intent(this, DisplayMessageActivity.class); EditText editText = (EditText) findViewById(R.id.edit_message); String message = editText.getText().toString(); intent.putExtra(EXTRA_MESSAGE, message); startActivity(intent); } } 

Activity_main.xml:

 <LinearLayout 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:orientation="horizontal" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.amazon.demo.MainActivity" > <EditText android:id="@+id/edit_message" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:hint="@string/edit_message" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button_send" android:onClick="sendMessage" /> </LinearLayout> 

DisplayMessageActivity.java:

 public class DisplayMessageActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_display_message); // Get the message from the intent Intent intent = getIntent(); String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE); // Create the text view TextView textView = new TextView(this); textView.setTextSize(40); textView.setText(message); // Set the text view as the activity layout setContentView(textView); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.display_message, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } public static class PlaceholderFragment extends Fragment { public PlaceholderFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_display_message,container, false); return rootView; } } } 

Activity_display_message.xml:

 <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:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.amazon.demo.DisplayMessageActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout> 

Теперь, в отличие от My First App, происходит сбой при нажатии кнопки. У меня нет файла fragment_main.xml и fragment_display_message.xml в любом месте моего проекта. Созданы ли эти два файла самостоятельно? Или мы должны их отдельно создавать?

Также я установил все предпосылки для разработки приложения Android правильно? Я не уверен.

Кроме того, в DisplayMessageActivity.java говорится: fragment_display_message не может быть разрешен или не является полем

Следовательно, я тоже не могу запустить файл.

Пожалуйста помоги. И прошу прощения за длинное описание.

Я только что решил ту же проблему, которая все еще существует в ANDROID-STUDIO. Создайте свой первый учебник по приложению .

В DisplayMessageActivity.java я заменил R.layout.fragment_display_message на R.layout.activity_display_message . Это ссылается на activity_display_message.xml который в противном случае является избыточным.

Вам не нужно создавать новый fragment_display_message.xml .

Когда я создавал фрагмент с использованием blank activity я обнаружил, что в качестве опции отсутствует параметр « Fragment Layout Name , если это так, вам нужно создать файл fragment_display_message.xml для себя, а также несколько других xml файлов. Чтобы проверить файлы и код, который вам нужен, вы можете обратиться к этой ссылке. Он содержит все файлы, необходимые для фрагмента.

Надеюсь, это помогло.

В вашем AndroidManifest.xml вам нужен тег. Обращайтесь к моему образцу AndroidManifest.xml.

 <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="bm.app.shiftmanagement" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="18" /> <uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.SEND_SMS"/> <uses-permission android:name="android.permission.RECEIVE_SMS"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <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> </application> 

В вашем AndroidManifest.xml необходимо изменить это место.

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

У меня была такая же проблема. Нет необходимости создавать fragment_main.xml и fragment_display_message.xml . Просто обновите файл /MyFirstApp/src/com/example/myfirstapp/DisplayMessageActivity.java . Заменить строку:

 View rootView = inflater.inflate(R.layout.fragment_display_message,container, false); 

с:

 View rootView = inflater.inflate(1,container, false); 

Минимальная версия SDK должна быть 11 в файле /MyFirstApp/AndroidManifest.xml :

 android:minSdkVersion="11" 

И вы можете продолжить.

Intereting Posts
Включить кнопки onClick Как я могу реализовать реферальную программу для пользователей приложений на рынке Android? Поддержка SVG на Android Начать операцию из фрагмента с использованием Transition (поддержка API 21) Лучший REST Client Framework / Утилита на Android Можно ли задать цвет текста для ссылок внутри текстового вида? Обработка ссылок из других приложений: как это делает приложение для Android-приложений для стеков? Как я могу оптимизировать цикл 4D-матричное векторное умножение с ARM NEON? У Android программно вставленных SMS есть некорректная метка времени в приложениях обмена сообщениями Расшифровка AES128: поврежден блок блокировки javax.crypto.badpaddingexception Элемент Android Centering в RecyclerView @ Проблема с отображением шрифта на теге абзаца, Chrome Android 4 Eclipse ADT сбой при автозаполнении Как узнать, загружено ли приложение из Google Play или Amazon? Проверьте, существует ли виджет на рабочем столе с помощью appWidgetId