12インチの謎
2014/05/16 11:28:26Noranekoです。
現地の日本だと5/21の0時らしいですけどね。
いろいろ情報収集して謎が解けたよ!!
MBAに12インチとかも噂されてて、11、12、13と1インチ刻みで揃えてなんか意味があるのか?
と思っていた時期もありました。
そうじゃなかったのですね。
実に感動した。
どういうことかというと、
MBAの11インチが現在、300mm*192mm、Surface Pro 2が275mm*173mm。
そんで、12インチで16:9のモニタの仕様が267mm*150mm。
『謎はいつも真実のじっちゃんはひとつ!』
『みんなをここに集めてくれ』
思うんだけど、謎解きの際にたまに逃げ出す犯人いるけど
呼び出された時に逃げれば良いんじゃないかな?
私ならそうします!!
話がそれましたが、
Surfaceに関してはギリギリですが、入れ込むことができるうぅううう!
12インチで周辺機器、特にキーボードどうすんだよ?作り直し?
と思ってたけど、これなら流用も可能だぜ!
全ては5/20(日本時間5/21 0時)に明らかに!!
もしSurface Pro Xの12インチが今までのサイズで確定なら、
MBAも現在の11インチに12インチを載せてくるのは可能性大ですね。
やべー新型Surface超欲しい。
miniはいらん。
気に入ったら押してね
~こんなアプリ出してます~
ガジェット
2014/05/14 01:59:43N-COUNT A gadget is a small machine or device which does something useful.
(COBUILD)
Hi, this is Noraneko ;)
新しい物とかあんまり興味なくて、物は壊れるまで使い倒す。
大昔に買って未だに現役な物がそこそこあるけど、
ほんとここ数年の物はすぐ壊れるし粗悪すぎ!
ソニータイマーとかそういう次元じゃなくて、
設計が元からおかしいんじゃないか?
プロトタイプとか作って試行錯誤してないだろ?
というレベル。
昔、会社に入ってた頃にキャリアの新機種対応のアプリ作成をやってて、
アプリが遅いとか言われてたけど、完全にデバイスのスペック不足だった。
試しにQVGAの拡大表示とFWVGA+で表示の速度チェックしてみたけど、
拡大表示はサクサクだった。
文字がぼけてたけど、実用レベルだった。
つかレンダリングする場所が結局4倍以上になっててそれなりのスペックが必要なのに、
明らかにスペック不足感が否めなかった。
そういや、グルグル機能(特許侵害)ついてるHDDの音楽聞くやつあれ1年で2回も壊れた。
当時は銀座しかなく修理受付も人大杉だったなぁ。
あと某ゲーム機なんだけど、閉めた時に下のディスプレイの枠が上のディスプレイに当たる。
しかも上のディスプレイの方が大きいから、ゲーム画面のとこに筋がつくのよね。
一応拭き取れるけど、傷ついちゃうだろ?
そもそも当たる仕様がおかしいし、妥協しちゃいけないとこだろ?
という感じで、不満だらけの世の中だぜ!!
そんな中でもたまに、本当にたまに買っても良いかなっていうのが、
1年に1回くらい出てくる。
おととしは『ZENBOOK Prime UX21A』、
去年は『Surface Pro 2』。
そして今年は...
『Nexus5』
FHD、RAM-2GB、そしてSIMフリー!!
携帯買い換えとかこれっぽっちも考えてないんですが、
最近MVNOにMNPするかもと相談されて、Android端末を探してたらこれの赤が出てきて、
スペックと値段もチェックしたらなかなかの逸品だったのでオススメした。
お値段は16GBで¥40,937。
ヤフオクなんかで新品未使用品が3万以下で売ってるYO!
そんで、ヤフオクなんかで売ってるやつはGoogle直販のじゃなくて、
ほとんどがEMOBILE版です。
ちゃんとMVNOのSIMは使えてるみたいですね。
唯一気になるのが、
『LG製』
と言うこと。
まぁGoogleのOEMだから悪さはできないだろうってことで、
もし自分の携帯が壊れたら第一候補ですね。
ていうか『ZENBOOK Prime UX21A』も『Surface Pro 2』も
買いそびれて買ってないけどね^ω^ω^ω^
気に入ったら押してね
~こんなアプリ出してます~
ListViewのお話 Vol.2
2014/05/12 15:04:22ねこに小判を作りました。
数字を打ち込んでエンター押していくだけで簡単に合計がわかります。
また、『便乗値上げチェッカー』を搭載してるので、
便乗値上げしてる店を発見したら店長を呼び出し、
どういうことなのか、小一時間問い詰めることができるでしょう。
それでは以前のListViewのお話です。
ListViewで一件だけ削除は問題ないというとこまで話をしましたが、
ある条件の物を削除するということをした際に問題が発生しました。
for文でindexを使いremoveする時は、
ListView lv;
// アダプターを取得する
OrenoAdapter adpter = (OrenoAdapter)lv.getAdapter();
if(adpter != null){
final int max = adp.items.size() - 1;
// ぐるぐるする
for(int i = max; i >= 0; i--){
// itemを取得
OrenoClass ore = adp.items.get(i);
if(ore != null){
// 削除する条件
if(ore.id == 99){
adp.remove(s);
}
}
}
adp.notifyDataSetChanged();
}
という感じにしましょう!
removeをすると、どうやら構造体が上に詰まる(正しい表現がわからん^ω^)ので、
indexの最大値から0まで逆に回せばおk!
0から回してて、消えてないアイテムがあったり、範囲外エラー出てたりちょっと悩まされてた。
謎が解ければなんてことないです。
あとオブジェクトを取り出した後はnullチェックしましょう。
nullチェックしないプログラマはプログラマにあらずです!
つかadpterを取り出した後に、foreachで回した方がよくね?
と思いやってみましたが、
java.util.ConcurrentModificationException
が発生します^ω^
結局removeをやることで、構造体が変わるのでけつから消せってことですね。
気に入ったら押してね
~こんなアプリ出してます~
Android SDKがおかしぃ。。。
2014/05/06 20:18:56てことで、ちょっと自分の為に作りたいアプリがあったので
Eclipseで新規プロジェクトで作ろうとしたんだけど、固まりすぎワロタwww
...
いやちょっとワロエないかも...
前回のListViewの続きを書きたかったけど、また今度にします。
86対応エミュとかでSDKをアップデートした結果、
『Android SDK Tools 22.6.3』
ていうのが今入ってて、ちょっと調べた感じだと、
Action Barって言う謎の物体が下位のversionでも使用できるようになって、
Android 4.0(API14)未満に対応しようとすると、変なライブラリをインストールするようになりました。
なのでAndroid 4.0未満に対応しなければ良い話なんだけど
私のAndroidが2.3.3なので、作るアプリは基本2.3以上対応なんですよ。
つうことで今回はエラーでまくりでなんもできなくなった!!
ぷんぷん丸プログラマーの皆様に私なりの対処法を伝授します。
本来なら一子相伝ですが、GW最終日なので全員に教えちゃいます!
まず、この変なライブラリをインストールする為に、
Android SDK Manager -> Extras -> Android Support Library
が必要になるので、インストールしておきます。
ここで注意が必要なのですが
これをインストールした時に、昔からAndroidを開発してた人は
SDK\extras\android\compatibility\v7\appcompat
となっている可能性が高いです。
私がそうでした。
上記のパスになってる人は、
一回アンインストールして、もう一度インストールし直しましょう。
SDK\extras\android\support\v7
になっていれば大丈夫です。
それでは、2.3対応のプロジェクトを作ってみましょう
File -> New -> New Android Application
ここのMinimum Required SDKを
『API 9:Android 2.3(Gingerbread)』
にします。
Action Barはいらないので、Themeは『Holo light』辺りで。
Nextを押して行って、Create Activityで
Empty Actibityを選択します。
Activity Name等を決めてFinishを押します。
そうすると、
WARNING: unable to write jarlist cache file ***\appcompat_v7\bin\jarlist.cache
が出て、応答なしになる可能性がかなり高いです。
右上の×を押してEclipseを閉じましょう。
たまに普通にプロジェクトができる時もありますが、ほぼ応答なしです。
閉じたら開きます。
そうすると、プロジェクトディレクトリ(ここでは『Test』とします。)と
『appcompat_v7』 ディレクトリができています。
しかし、強制終了したので『appcompat_v7』が開けないので
右クリックをして、『Open Project』を選択しましょう。
そうすることによって、
『appcompat_v7』と『Test』に赤い×がつきます。
次に『appcompat_v7』をまた右クリックして、『Build Project』を選択します。
多分赤い×が消えます。
そしたら『Test』を同様に右クリックして、『Build Project』を選択します。
これで『Test』の赤い×が消えます。
もし『Test』の方の赤い×が消えていない場合は、
Eclipseを再起動してもう一度『Build Project』を選択してみて下さい。
何回かやれば消えると思われます。
と言うように、私の環境では結構ひどいことになっております。
しかも同じような条件の新規プロジェクトを作ると、
『appcompat_v7_2』、『appcompat_v7_3』と同じ物が作られてしまいます!
これはひどい^^;
一個あれば大丈夫なので、プロジェクトを右クリックして
Properties -> Android -> Library
から『appcompat_v7_*』を選択して『Remove』、
『Add』を押して既存の『appcompat_v7』を選択して、
その下にある『Apply』を押して一番下の『OK』を押します。
最後に『appcompat_v7_*』を削除しましょう。
今までLibraryの仕様が変わったりしましたが、
プロジェクトを作った際に自動でLibraryを追加するということが弊害になっています。
ブログとか見てると、ダウングレードしてる人とかもいますね...
しかもこういう仕様なので、最初に4.0をターゲットにして
後から2.3もターゲットにするとエラーが出まくってコンパイルできません。
なので現在の最新のSDKで何か作ろうと思ってる方は、
下位互換をするかどうかちゃんと決めないと泣きを見ることになるでしょう。
そんなこんなで、Android開発環境を作り直さないといけないかもしれない^ω^#
気に入ったら押してね
~こんなアプリ出してます~
ListViewのお話
2014/04/26 01:32:17それに伴い、Studio nekoでもセール始めてみました^ω^
Google Play ストア見てみてね。
今までのアプリも今月はちょこちょこ更新いれて、
多少は使いやすくしたりとかしてるので試してみてちょんまげ。
ということで、今回はねこったぁを作ってる際に???となったので、
それについてのまとめというか、久々にAndroidのお話をしたいと思います。
まずAndroidのListViewとはなんぞや?
上の画像の赤枠で囲まれたのがListViewという物です。
iPhoneなんかが出てきてよく見かけるようになってると思いますが、
AndroidではListViewと呼びます。
iOSではなんて呼ぶか知らん。
そんで、ListViewを表示するための中身を配列で作ります。
つまりListViewにint型、String型と別の型同士を入れることはできません。
一つの型だけです!!
多分。
通常は独自の型をclass化して使いますね。
それでこの中身をAdapterと言います。
多分。
それでは、簡単なロジックを見てみましょう。
ListView lv = new ListView(this);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, Strings);
adapter.add = "おまえは";
adapter.add = "もう";
adapter.add = "死んでんねんで!";
lv.setAdapter(adapter);
これだけです。
簡単ですね。
しかしListViewで『ねこったぁ』の様に情報をイロイロ表示しようとすると、
ArrayAdapterをextendした独自のアダプタに独自の構造体を作らなければいけません。
ListView lv = new ListView(this);
ArrayList<OrenoClass> list = new ArrayList<OrenoClass>();
// 中略
for(OrenoClass o : orenoclasses){
list.add();
}
OrenoAdapter adapter = new OrenoAdapter(this, R.layout.ore, list);
lv.setAdapter(adapter);
public class OrenoAdapter extends ArrayAdapter<OrenoClass>{
// 中略
}
public class OrenoClass{
// 中略
}
といった感じになります。
まぁここまでは小学生でも知ってることなので、ListViewから削除したい!
今回はこれについて熱く語りたかったので、筆を執りました。
ListViewのある部分を消す場合には、adapterを取り出し操作することでできます。
OrenoClass ore; // 消したいオブジェクトとする
ListView lv;
// アダプターを取得する
OrenoAdapter adpter = (OrenoAdapter)lv.getAdapter();
// 消す
adpter.remove(ore);
adpter.notifyDataSetChanged();
実にシンプルでわかりやすいですね。
でもある機能を入れた時にその事件は起こったんだ...
まさかあんなことになるなんて...
ドス!!
目の前にはただ赤
ぼくの喉からあふれ出す血の赤
最後に思ったのは、一人残った真理はどうするのだろう、ということだった
死体の山の中でただ一人
ぼくは真理が可哀想になった
……真理……
終
気に入ったら押してね
~こんなアプリ出してます~
BLOG内検索
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
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 |
カテゴリー