配列のインテントに問題があります。長方形の配列を別のパッケージに送りたいです。私はこのチュートリアルに従っています。残念ながら、インテントにはまだ問題があります。だから私はクラスを持っていActivityToSend
ます。別のパッケージの storePrintIMC
別のクラス ( )に送信したい。SamplePreferenceActivity
ActivityToSend
クラス:
public class ActivityToSend extends Activity {
private Activity activity;
private ArrayList<String[]> data;
private static LayoutInflater inflater = null;
public String[] inkLevels = new String[5];
View message;
String [][] storePrintIMC= new String [4][4];
public static final String ARRAYS_COUNT = "com.Status.App.ARRAYS_COUNT";
public static final String ARRAY_INDEX = "com.Status.App.ARRAY_INDEX";
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final String data[][] = storePrintIMC;
Bundle bundle = new Bundle();
int count = data.length;
bundle.putInt(ARRAYS_COUNT, count);
for (int i = 0; i < count; i++)
{
bundle.putStringArray(ARRAY_INDEX + i, data[i]);
}
Intent intent = new Intent(this, SamplePreferenceActivity.class);
intent.putExtras(bundle);
startActivity(intent);
}
}
私が使用する別のパッケージの 2 番目のアクティビティの場合:
public class SamplePreferenceActivity extends PreferenceActivity {
private static final int DIALOG_READ_ME = 1;
public String[] inkLevels = new String[5];
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle bundle = getIntent().getExtras();
if (bundle != null) {
int count = bundle.getInt(ActivityToSend.ARRAYS_COUNT, 0);
ArrayList<String[]> arrays = new ArrayList<String[]>(count);
for (int i = 0; i < count; i++)
arrays.add(bundle.getStringArray(ActivityToSmartWatch.ARRAY_INDEX + i));
String[][] data = arrays.toArray(new String[][]{});
}
}
}
また、Android マニフェストにもいくつか変更を加えました。2 番目のパッケージについては、次のように記述します。
<activity android:name=".SamplePreferenceActivity " android:label="@string/preference_activity_title">
<meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.PrinterStatus.AppLab.SamplePreferenceActivity " />
- <intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
<activity android:name="com.sonyericsson.extras.liveware.extension.controlsample.SamplePreferenceActivity" android:parentActivityName="com.PrinterStatus.AppLab.ActivityToSend" />
<service android:name="com.sonyericsson.extras.liveware.extension.controlsample.SampleExtensionService" />
次の最初のパッケージでエラーが発生します。
Intent intent = new Intent(this, SamplePreferenceActivity.class);
何を変えればいいのかわからない。何か考えはありますか?