主にAndroid プログラミング

主にAndroid

Androidの情報を中心に、自分の備忘録を兼ねて書いてます

スポンサーサイト 

--/--/--
--. --:--

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

[edit]

CM: --
TB: --

page top

SQLiteQueryBuilderでカラム名に別名を付ける方法 

2011/05/02
Mon. 12:58

SQLiteQueryBuilderでクエリを作成するとき、カラムに別名(エイリアス)をつけたい場合は、setProjectionMap()メソッドを使う。

例えば、"tableName.ColumName" に "aliasName" という別名をつけたい場合は、以下のようにする。

HashMap map = new HashMap();
map.put("tableName.ColumName", "tableName.ColumName as aliasName");
SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
qb.setProjectionMap(map);

ちなみに、Activity.managedQuery()のprojectionにはnullを入れられる。
nullを入れるとテーブル定義順に結果が取得される。

    Google Androidプログラミング入門          Android Hacks ―プロが教えるテクニック & ツール
Google Androidプログラミング入門   Android Hacks ―プロが教えるテクニック & ツール
スポンサーサイト
スポンサードリンク

[edit]

CM: 0
TB: 0

page top

Android 3.0 Honeycomb のソースにバグがある? 

2011/04/06
Wed. 13:11

ソース

以下適当意訳。

Fragment.isInLayout()は常にfalseを返す
このメソッドは、レイアウト内で実行されるかされている場合のFragmentが検出できるようにするためのものだが、常にfalseを返す。

ProgressDialog.STYLE_HORIZONTALを使用するときProgressDialog がぬるぽ
ProgressDialogはSTYLE_HORIZONTALをサポートしているが、実際は使えない。

MultiSelectListPreferenceは、キーのエントリを扱う
これは、ユーザーが複数の項目を選択できるリストを提示好みを持っている新しいクラスだ。 しかし、それを期待どおりに動作させるために非常に醜い回避策(キーとして表示するために、文字列を使用)を講じる必要がある。
スポンサードリンク

[edit]

CM: 0
TB: 0

page top

showDialogでUIスレッドは止まらない? 

2011/04/05
Tue. 14:12


public void onClickSave(View view) {
// 入力チェック
if (!isSavable()) {
// 未入力項目があったらダイアログをだして終了
showDialog(DIALOG_ERROR_INPUT);
}
// 保存
save();
}

上のように書いたら、isSavable()メソッドで入力チェックしても、ダイアログを表示せずsave()メソッドを実行してしまった。
showDialog()の後にreturnで終わらせることで解決した。

public void onClickSave(View view) {
// 入力チェック
if (!isSavable()) {
// 未入力項目があったらダイアログをだして終了
showDialog(DIALOG_ERROR_INPUT);
return;
}
// 保存
save();
}

スポンサードリンク

[edit]

CM: 0
TB: 0

page top

Xperia Playのトレーニングビデオがdesign3で公開 

2011/04/03
Sun. 22:00

ソニー・エリクソンは、Xperia Playのゲーム開発に必要なトレーニングのすべてをdesign3で公開すると、開発者のブログで発表してました。

design3は、ゲーム開発養成ビデオをHD画質で配信するサイトで、月20ドルですべてのビデオを視聴できます。

ゲーム開発者は、Javascript, C#, Pythonで簡単に3Dゲーム開発できるUnityエンジンの使い方をdesign3で勉強できるようです。

また、Androidデベロッパーアカウントの作成から、SDKのインストール、携帯デバイスのセットアップ方法もdesign3で配信されるようです。

Android Development With Unity Chapter 1 - Introduction & Setup

Unityエンジンの使い方を既に知っていても、マルチタッチ、加速度センサー入力などを含めたXperia PlayのAPIについて学べるため、非常に勉強になりそう。

課金しなくても、いくつか視聴できるようなので、あとで見に行ってみようっと。

ソース:Android Community
スポンサードリンク

[edit]

CM: 0
TB: 0

page top

縦にスクロールするGallery 

2011/04/03
Sun. 15:22

本来なら横にスクロールするGalleryを、縦にスクロールするように改造した俺得クラスです。

去年作ったものですが、ぐぐっても出てこないので俺しか必要ないんだろうなあ・・・。

Android 1.6をベースにしてるので、1.5以前では動作しないかも。

VerticalGallery.txt
VerticalGalleryAdapterView.txt
VerticalGalleryAbsSpinner.txt

使用方法
↑のファイルの拡張子をjavaにして投げ込む
後はGalleryとほぼ同じように使えます。

使用例(画像はApiDemo参照)

public class MainActivity extends Activity implements
VerticalGalleryAdapterView.OnItemSelectedListener {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.main);

VerticalGallery g = (VerticalGallery) findViewById(R.id.gallery);
g.setAdapter(new ImageAdapter(this));
g.setOnItemSelectedListener(this);
}

public void onItemSelected(VerticalGalleryAdapterView parent, View v,
int position, long id) {
}

public void onNothingSelected(VerticalGalleryAdapterView parent) {
}

public class ImageAdapter extends BaseAdapter {
public ImageAdapter(Context c) {
mContext = c;
}

public int getCount() {
return mImageIds.length;
}

public Object getItem(int position) {
return position;
}

public long getItemId(int position) {
return position;
}

public View getView(int position, View convertView, ViewGroup parent) {
ImageView i = new ImageView(mContext);

i.setImageResource(mImageIds[position]);
i.setAdjustViewBounds(true);
i.setLayoutParams(new VerticalGallery.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
// i.setBackgroundResource(R.drawable.picture_frame);
return i;
}

private Context mContext;

}

private Integer[] mImageIds = { R.drawable.sample_0, R.drawable.sample_1,
R.drawable.sample_2, R.drawable.sample_3, R.drawable.sample_4,
R.drawable.sample_5, R.drawable.sample_6, R.drawable.sample_7 };

}



android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">

android:background="#55000000"
android:layout_height="fill_parent" android:layout_width="fill_parent"
android:cacheColorHint="#00000000" android:fadingEdge="none"
android:divider="#00000000" android:smoothScrollbar="true"
android:scrollbars="none"/>

スポンサードリンク

[edit]

CM: 2
TB: 0

page top

2017-07
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • »

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