Переключение XML-макетов?
Что здесь не так? по какой-то причине я хочу переключить компоновку xml с одного java-класса на другой java-класс, второй класс действительно имеет правильный код для его загрузки (я верю, поскольку я опубликую здесь), и он должен загружаться при вызове, но вместо этого на мой телефон я продолжаю приближаться, я использую намерения, если вы посмотрите здесь
Я только попробовал одну кнопку на данный момент
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;
import android.widget.LinearLayout;
public class mainMenu extends Activity {
private static final int ACTIVITY_CREATE=0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); //This is calling the layout in the main.xml file if I change the main.xml file name then I would
LinearLayout lin = (LinearLayout)findViewById(R.id.mainLayout);
lin.setBackgroundResource(R.drawable.letterlist);
Button free = (Button)findViewById(R.id.freeDraw);
Button trace = (Button)findViewById(R.id.trace);
Button sent = (Button)findViewById(R.id.sentence);
free.setOnClickListener(new OnClickListener() {
public void onClick (View v) {
Intent myIntent = new Intent(v.getContext(), freeDraw.class);
startActivityForResult(myIntent, 0);
}
});
}
}
Далее будет код, который я тоже пытаюсь переключить, они оба используют один и тот же пакет, который я уже проверил.
public class freeDraw extends Activity implements OnGesturePerformedListener {
private EditText words; //calling my edit text and naming it to variable words
private static final String TAG = "Gesture Revealer";
GestureLibrary gestureLib = null; //calling my gesture library
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.free); //This is calling the layout in trace.xml for now
Нет ошибок ни в одном из XML-файлов. Итак, мой вопрос в том, что я делаю не так с намерениями? (потому что я считаю, что это проблема.
Но в основном все, что я хочу сделать, это переключаться из главного меню (первый код), когда кнопка нажата, чтобы перейти в режим свободного рисования (второй код). Который воспитывает совершенно новый макет.
вот ошибка выполнения Android, я получил в LogCat
01-18 03:50:48.432: E/AndroidRuntime(16938): FATAL EXCEPTION: main
01-18 03:50:48.432: E/AndroidRuntime(16938): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.better.work.learning.letters.and.more.awesome/com.better.work.learning.letters.and.more.awesome.freeDraw}; have you declared this activity in your AndroidManifest.xml?
01-18 03:50:48.432: E/AndroidRuntime(16938): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1541)
01-18 03: 50: 48.432: E / AndroidRuntime (16938): на android.app.Instrumentation.execStartActivity(Instrumentation.java:1515) 01-18 03:50:48.432: E/AndroidRuntime(16938): на Android.app.Activity.startActivityForResult(Activity.java:2941) 01-18 03:50:48.432: E/AndroidRuntime(16938): на com.better.work.learning.letters.and.more.awesome.mainMenu$1.onClick(mainMenu.java:41) 01-18 03:50:48.432: E/AndroidRuntime(16938): на android.view.View.performClick(View.java:2532) 01-18 03:50:48.432: E/AndroidRuntime(16938): на android.view.View$PerformClick.run(View.java:9293) 01-18 03:50:48.432: E/AndroidRuntime(16938): на android.os.Handler.handleCallback(Handler.java:587) 01-18 03:50:48.432: E/AndroidRuntime(16938): на android.os.Handler.dispatchMessage(Handler.java:92) 01-18 03:50:48.432: E/AndroidRuntime(16938): на android.os.Looper.loop(Looper.java:143) 01-18 03:50:48.432: E/AndroidRuntime(16938): на android.app.ActivityThread.main(ActivityThread.java:4263) 01-18 03:50:48.432: E/AndroidRuntime(16938): в java.lang.reflect.Method.invokeNative(собственный метод) 01-18 03: 50: 48.432: E / AndroidRuntime (16938): в java.lang.reflect.Method.invoke(Method.java:507) 01-18 03:50:48.432: E/AndroidRuntime(16938): на com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 01-18 03:50:48.432: E/AndroidRuntime(16938): в com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 01-18 03:50:48.432: E/AndroidRuntime(16938): в dalvik.system.NativeStart.main(собственный метод)
1 ответ
01-18 03:50:48.432: E/AndroidRuntime(16938): FATAL EXCEPTION: main
01-18 03:50:48.432: E/AndroidRuntime(16938): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.better.work.learning.letters.and.more.awesome/com.better.work.learning.letters.and.more.awesome.freeDraw}; have you declared this activity in your AndroidManifest.xml?
01-18 03:50:48.432: E/AndroidRuntime(16938): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1541)
Этот Logcat означает, что вы не объявили свою вторую активность в файле манифеста.