遮蔽空間

モバイル系のサイトやコンテンツ制作のお仕事をしてます。最近は自分用メモになってたり(・ω・)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

SDKを更新したら起動しない(could not Find adb.exe)

やっちまった;;
何か起こるんじゃなかろうかと、新しいSDKの更新控えてたのに
プロジェクトが終わって気が抜けて「なんとなく」更新したら

 could not Find /パス/adb.exe!

とかいうエラーが表示されて、AVD Managerとか色々起動しなく
なってしもうた・・・orz

adb.exeがtempフォルダに移動されていたので移動してみたけどダメ。

で、参考になったサイトはこちら
http://goo.gl/2pJGM


こんなんじゃ怖くてSDKのバージョン上げられん;;;

スポンサーサイト

【Android】ScrollViewとGesutureDetectorrを同時に使うと…

画面サイズを超えるページなのでScrollViewで表示。

で、そのページでフリック動作を取ろうとして
GesutureDetectorをImplementsしてみたところ
何故かスクロールしない(ジェスチャーは取れている)

で、色々試してみた結果、こんな感じでした。


ScrollViewを継承したクラスにGestureDetectorをimplements
 ⇒ジェスチャーはとれるがスクロールはダメ


Activityを継承したクラスにGestureDetectorをimplements
 ⇒スクロールは取れるがジェスチャーはダメ



※①のソース抜粋
//自前View(GetGesture)を呼ぶだけのClass
public class TestProject extends Activity{
  private View view;
  @Override
  public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  view = new GetGesture(this);
  setContentView(view);
  }
}


//自前View ジェスチャーイベントの処理
class GetGesture extends ScrollView
implements GestureDetector.OnGestureListener{
  private GestureDetector gestureDetector;
  public GetGesture(Context context) {
    super(context);
    gestureDetector=new GestureDetector(context,this);
    setFocusable(true);

    //イメージ画像の読み込みと配置
    ImageView imageView = new ImageView(getContext());
    Bitmap bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.img480x1000);
    imageView.setImageBitmap(bitmap);
    imageView.setLayoutParams(new LinearLayout.LayoutParams(
      LinearLayout.LayoutParams.FILL_PARENT,
      LinearLayout.LayoutParams.WRAP_CONTENT));
    this.addView(imageView);
  }

  //GestureDetectorのイベント処理
  @Override
  public boolean onTouchEvent(MotionEvent event) {
    gestureDetector.onTouchEvent(event);
    return true;
  }

  //ダウン
  public boolean onDown(MotionEvent e) {
    Log.i("MyInfo","Down");
    return false;
  }

  //長押し
  public void onLongPress(MotionEvent e) {
    Log.i("MyInfo","LongPush");
  }

  //フリック時に呼ばれる(速度単位はPixel/秒)
  public boolean onFling(MotionEvent e0,MotionEvent e1,
    float velocityX,float velocityY) {
    Log.i("MyInfo","Flick");
    return false;
  }

  //スクロール
  public boolean onScroll(MotionEvent e0,MotionEvent e1,
    float distanceX,float distanceY) {
    Log.i("MyInfo","Scroll");
    return true;
  }

  //プレス
  public void onShowPress(MotionEvent e) {
    Log.i("MyInfo","Press");
  }

  //シングルタップアップ
  public boolean onSingleTapUp(MotionEvent e) {
    Log.i("MyInfo","Single Tap Up");
    return false;
  }

  //ダブルタップ
  public boolean onDoubleTap(MotionEvent e) {
    Log.i("MyInfo","Doubl Tap Up");
    return false;
  }

  //ダブルタップイベント
  public boolean onDoubleTapEvent(MotionEvent e) {
    Log.i("MyInfo","Doubl Tap Event");
    return false;
  }

  //シングルタップ
  public boolean onSingleTapConfirmed(MotionEvent e) {
    Log.i("MyInfo","Single Tap");
    return false;
  }


ジェスチャーのスクロールイベントからScrollViewを
制御できるのか調べ中。

もしダメだったらGestureDetector使わずにViewクラスの
onTouchEventを試してみます。


段々ハードルが上がってきてプログラム初心者には
キツくなってきた…。
アプリちゃんと完成するのかのぅ(´・ω・`)

Androidアプリ他言語対応

Androidアプリで他言語に対応する方法のメモ

values-ja  日本語
values-en  英語
values-zh  中国語
values-ko  韓国語
values-ru  ロシア語
values-fr  フランス語
values-es  スペイン語
values-pt  ポルトガル語
values-de  ドイツ語
values-it  イタリア語

ISO 639-1形式2文字で言語コード

上記のフォルダを作成し、それぞれの言語に対応した
string.xmlを作っておけばロケールを切り替えた時に
表示される文字が切り替わります。
(当然string.xmlを参照している部分のみですが)

【参考サイト】
@IT
http://www.atmarkit.co.jp/fsmart/articles/android08/android08_1.html

ISO 639(Wiki)
http://ja.wikipedia.org/wiki/ISO_639


地域コードというものもあるようで、その場合は
「-r○○」と続けると指定できるそうです。
※○○はISO 3166-1-alpha-2形式の2文字

Java初心者が陥る罠 ifでの文字列比較

いや、ちゃんと勉強しろという話なんですが・・・。

時間がないのでJavaの知識ゼロでイキナリAndroidアプリの
着手をしていて陥った恐ろしい罠の話。

SQliteに格納した会員データから値を取り出して
マークをつける機能を作っていたところ、どうしても
思った通りの結果にならない。

DBの型がいけないのか、途中で型がかわってるのか
3日間なやんでたどり着いた答えがこれ↓

参考文
文字列を比較する際に、== 演算子を用いてはなりません。
strA == strB は、strA と strB が同じオブジェクトか
どうかを調べたりする際に用いる演算子です。
例えば、下記の例では、strA も strB も文字列の値は
"ABCDEF" のはずですが、演算結果は false になります。


・・・え?
「==」で文字列の比較できないの???

ddmsの使い方もロクに知らない程度の能力なので、
(知ってたらすぐ解決できたかのかは定かじゃないが)
こんなことでいらぬ時間を費やしてしまった・・・orz


ActionScriptとPHP育ちの自分には回避できない罠でした。
基礎が出来てないと本当に時間かかるなぁ;;;

【Android】ScrollViewをXMLに書かない方法

いくらググってもXMLの方法しか見つからず、
昨日ようやくクラス内に記述する方法が見つかりました。

http://www.saturn.dti.ne.jp/~npaka/android/ScrollViewEx/index.html

そうこれ!これが知りたかった!

ふーむ、普段だとsetContentView(layout)を行うけど
ScrollView定義した場合はsetContentView(scrollView)のみ
行えばいいんだ。

XMLで定義するときは大分煩雑になるけど、そういう時は
どうしたらいいんだろう。一番最後の要素でsetContentViewを
行うのカシラ?


まだまだ初心者だわ~(-ω- )

次のページ

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。