Blog -

カテゴリ : 
Android » Tips
執筆 : 
NickQ 2013-1-24 9:45

画面の解像度毎にランチャアイコンや通知アイコンを用意しますが

少し前のAndroidならそれほど解像度がずば抜けているという事は無かったんですが

最近のタブレットや4.0搭載している物などは今までの余り気に留めなかったサイズがもろに

出てしまいますそこで意外と忘れがち、な各解像度で必要なサイズをまとめました

(若干サイズが違うのは私の主観もあります)

 

   drawable-hdpi  drawable-mdpi drawable-ldpi  drawable-xhdpi 

ランチャー 

 72*72  48*48  32*32  98*98

通知

 38*38  25*25  19*19  50*50

 

drawable-nodpi はそれぞれ解像度判断されない画像を格納する(ただしストレッチさせると画面に合わせて縮小拡大する)

 

  • コメント (0)
  • トラックバック (0)
  • 閲覧 (7398)

カテゴリ : 
Android »
執筆 : 
NickQ 2013-1-17 16:21
 Google Cloud Messaging for Android (GCM)今更ながら調査の為、触ってみた。
ついでにGoogle App Engine(GAE)での開発にも少し手を入れようと考えてサーバ側の環境は
GAEで作ってみる事にした。
 
アプリの概要はこんな感じ
 
簡単に言うとオンラインのクリップボードを考えていて
Androidアプリにて端末からGAEのサーバアプリにGCMのIDを登録する。
PC側からコピー動作を行ったらGAEサーバへPOSTして
GAEサーバで受けたPOSTにて対象Android端末へ通知を行う。
 
URLやMailアドレスなどだった場合、Android側で即表示可能にする。
通常受信したデータはAndroid端末のクリップボードに張り付けて利用可能にする。
 
その際に、PCからショートカット(Ctrl + Alt + C)で一発で飛ばしたい!(Winに限る)
ブラウザからも同じ事がしたい。
 
どこに使うのか?
 
PCで見ていたアドレスをAndroid端末に渡してみたい場合
・自分の場合は、技術文献など隣に置いたタブレットに飛ばしてPCで開発、タブレットで読む
 
Androidにしか設定していないメールアカウントで長文メールを打ちたいけど面倒な場合
・PCで長文打ってAndroid端末のクリップボードでペーストする(誤字脱字軽減)
 
PCで受信してしまったメールにヤマト伝票番号が有ってそれを端末に飛ばしたい場合
・メールでも可能ですが、ショートカットで一発で送りたい

などなど。

そして作りました。

PC側は流石に、VisualStudioで作りこんでいます。

なかなか快適にオンラインクリップボード出来ますが

GAEが重量課金の為、リリース無料でやるのはちょっと厳しい。

月額にして使ってくれるんだろうか、悩むところ。

寄付もまた微妙だし。

こんな追加機能付けたら行けるだろうか

・特定のパスワードをコピーすると、振動や音で居場所を知らせてくれる(無くした時の発見対策)

GPS起動して座標特定するとか。

・特定のコマンドをコピーすると、写真を撮るとか(画像送信未対応ですが)

・画像のやり取りに対応するとか。

アプリは出来てるんだけど、これは身内で使うかな。

  • コメント (0)
  • トラックバック (0)
  • 閲覧 (8794)

カテゴリ : 
Android
執筆 : 
NickQ 2013-1-7 13:54

以前、自作ArrayAdapterをListViewにセットして

onListItemClickが発生しない場合の方法を投稿していたがそれでも発生しない場合

(ListActivityで無い場合など)

の対策方法として

ArrayAdapter側のgetViewでView自体にOnClickListenerを設定すると

Activity側のsetOnItemClickListenerが呼ばれる様になる方法を紹介します。

Activity側

onCreateなどで

 

   mListView = (ListView) findViewById(R.id.list);
   list = new ArrayList();
   list = dataSet(this); //<-データをセットする
   adapter = new CustomAdapter(this, R.layout.item, list);
   mListView .setAdapter(adapter);
   registerForContextMenu(mListView );
   //アイテムクリック
   mListView .setOnItemClickListener(new AdapterView.OnItemClickListener() {
     @Override
     public void onItemClick(AdapterView arg0, View arg1,int position,      long arg3) {
       Toast.makeText(getBaseContext(), list.get(position).getPointLocation(), Toast.LENGTH_SHORT).show();
       return;
     }
   });

 

ArrayAdapterのgetViewで

 

 public View getView(final int position, View convertView, final ViewGroup parent) {
   view = inflater.inflate(R.layout.list_item, parent, false);
   view.setOnClickListener(new OnClickListener(){
    public void onClick(View v){
     ((ListView) parent).performItemClick(v, position, (long)0);
    }
   });
 }

 

とすると発生する様になります。

 

 

  • コメント (0)
  • トラックバック (0)
  • 閲覧 (8032)
最新のコメント
  • NickQ(2012/11/19)
  • ゲスト(2012/11/19)
最新のトラックバック
メインメニュー

ログイン
ユーザー名:

パスワード:


SSL パスワード紛失


カテゴリ一覧

アーカイブ

Books