図書館から活動を始めたい。私の小さなテストは次のようになります。
このコードをメイン アクティビティに入れましたが、これはライブラリではありません。
public class MainActivity extends Activity {
MyTest myTest;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myTest = new MyTest(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public void helpPressed(View view) {
myTest.startNewActivity();
}
public void localHelpPressed(View view) {
Intent helpIntent = new Intent(this, LocalHelp.class);
startActivity(helpIntent);
}
}
そして、ライブラリにある「myTest」へのこのコード:
public class MyTest {
Context context;
public MyTest(Context context) {
this.context = context;
}
public void startNewActivity() {
Intent helpIntent = new Intent(context, HelpActivity.class);
context.startActivity(helpIntent);
}
}
「HelpActivity」をライブラリに、LocalHelp をアプリケーションに追加しました。
このコードは、(localHelpPressed メソッドを呼び出すことによって) 'LocalHelp' を作成するのに問題なく機能しますが、(helpPressed メソッドを呼び出すことによって) 'HelpActivity' を作成することはできません。「HelpActivity」で次のエラーが発生します。
01-16 23:49:17.940: E/AndroidRuntime(4736): Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {test.activity/com.example.test.activity.library.HelpActivity}; have you declared this activity in your AndroidManifest.xml?
01-16 23:49:17.940: E/AndroidRuntime(4736): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1556)
01-16 23:49:17.940: E/AndroidRuntime(4736): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1431)
01-16 23:49:17.940: E/AndroidRuntime(4736): at android.app.Activity.startActivityForResult(Activity.java:3391)
私がしようとしていることは可能ですか?- ライブラリがライブラリ内にあるアクティビティを作成するには?
とりあえず (私の実際のアプリケーションでは) ヘルプ画面をプロジェクトに移動し、ヘルプ画面が必要なときにライブラリが呼び出すコールバックを作成しました。これは機能しますが、正しく聞こえません。さらに、ライブラリを含むすべてのプロジェクトには、このコールバック メソッドが必要です。