すべてのカテゴリ » インターネット・パソコン » 技術・プログラミング

質問

終了

Androidアプリ開発初心者です。四つの言語を表示する絵本アプリを作ろうとしています。
絵本は以下のような感じになっています。
1.Startを表すボタン1つと4つの言語を表すラジオボタン4つがあるアクティビティがあります。
2.Startボタンのクリックで絵本の1ページ目がスタートして、絵本の1ページ目からはページめくりをできるようにする。
3.絵本のページが表示されたら、ラジオボタンで選択した言語に対応したテキストを一文字ずつ表示する。

今、2番のところをやっていますが、絵本の1ページ目が表示されず、エラーで強制終了となります。
ソースコードは以下です。どこを修正したらいいかご教授いただけたらと思います。
よろしくお願いします。
(アットマークが質問文に使用できないようなので、とりあえず削除しています。)

LanguageActivity.java
---------------------------
public class LanguageActivity extends Activity {

public void onCreate(Bundle savedInstanceState)
{

super.onCreate(savedInstanceState);
setContentView(R.layout.language);
final RadioGroup lang = (RadioGroup)findViewById(R.id.SelectLanguage);
lang.check(R.id.JP);
final Button StartBtn = (Button)findViewById(R.id.start);
StartBtn.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
OKBtnClick();
}
});
}

private void OKBtnClick()
{
Intent i;

final RadioGroup lang = (RadioGroup)findViewById(R.id.SelectLanguage);
switch (lang.getCheckedRadioButtonId())
{
case R.id.JP:
i = new Intent(this, Picture1Activity.class);
startActivityForResult(i,0);
break;
case R.id.EN:
i = new Intent(this, Picture1Activity.class);
startActivityForResult(i,0);
break;
case R.id.CH:
i = new Intent(this, Picture1Activity.class);
startActivityForResult(i,0);
break;
case R.id.SP:
i = new Intent(this, Picture1Activity.class);
startActivityForResult(i,0);
break;
}

}
}

---------------------------

picture.xml
---------------------------
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="+id/LinearLayout01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android"
android:id="+id/layoutswitcher"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="+id/firstpanel"
android:paddingTop="10dip"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textStyle="bold"
android:text=" 一枚目">
</TextView>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="+id/secondpanel"
android:paddingTop="10dip"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:textStyle="bold"
android:text=" 二枚目">
</TextView>
</LinearLayout>
</ViewFlipper>
</LinearLayout>
---------------------------

PictureActivity.java
---------------------------
public class PictureActivity extends Activity {
private ViewFlipper viewflipper;
private float lastTouchX;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.picture);

viewflipper = (ViewFlipper)this.findViewById(R.id.layoutswitcher);

this.viewflipper.setOnTouchListener(new OnTouchListener() {

public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
lastTouchX = event.getX();
break;
case MotionEvent.ACTION_UP:
float currentX = event.getX();
if (lastTouchX < currentX) {
viewflipper.showNext();
}
if (lastTouchX > currentX) {
viewflipper.showPrevious();
}
break;
}
return true;
}
});
}
}
---------------------------

===補足===
自己解決しました。
picture.xmlのTextViewの書き方が間違っていました。

  • 質問者:キョウ
  • 質問日時:2011-10-20 11:27:20
  • 0

関連する質問・相談

Sooda!からのお知らせ

一覧を見る