<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10japanesefull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom">
    <title>adakoda</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/" />
    
    <id>tag:www.adakoda.com,2008-11-02:/adakoda//1</id>
    <updated>2014-12-07T15:34:29Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Pro 4.22-ja</generator>

<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/adakoda" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="adakoda" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://paipo.jp/bookmarklet/?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="//feedburner.google.com/fb/i/subscribe_paipo.gif">Paipo???</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://add.my.yahoo.co.jp/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://i.yimg.jp/i/jp/my/addtomy/standard_bb.gif">myyahooへ追加</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.newsgator.com/images/ngsub1.gif">NewsGator Online???</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://feedpath.jp/feedreader/feeds_add?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://feedpath.jp/common/images/sub_feedpath.gif">feedpath???</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bloglines.com/sub/http://feeds.feedburner.com/adakoda" src="http://www.bloglines.com/images/sub_modern11.gif">Bloglinesへ追加</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://buttons.googlesyndication.com/fusion/add.gif">Google???</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://r.hatena.ne.jp/append/http://feeds.feedburner.com/adakoda" src="http://r.hatena.ne.jp/images/addto_w.gif">???RSS???</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://reader.livedoor.com/subscribe/http://feeds.feedburner.com/adakoda" src="http://image.reader.livedoor.com/img/banner/91_17_1.gif">Livedoorリーダーへ追加</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://reader.goo.ne.jp/web/bookmarklet.html?,,http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://reader.goo.ne.jp/web/img/addwebrss.gif">goo RSS???????</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.plusmo.com/add?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.newsalloy.com/?rss=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.newsalloy.com/subrss3.gif">Subscribe with NewsAlloy</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://download.attensa.com/app/get_attensa.html?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.attensa.com/blogs/attensa/WindowsLiveWriter/BadgeredintoBadges_10C02/attensa_feed_button5.gif">Subscribe with Attensa for Outlook</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.flurry.com/pushRssFeed.do?r=fb&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.flurry.com/images/flurry_rss_logo2.gif">Subscribe with Flurry</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Ffeeds.feedburner.com%2Fadakoda" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><entry>
    <title>[Chrome] プロ生ちゃんのテーマつくったよ</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/12/chrome.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.628</id>

    <published>2014-12-07T14:04:28Z</published>
    <updated>2014-12-07T15:34:29Z</updated>

    <summary> Chromeの「プロ生ちゃんのテーマ」をつくったよ。 ストアへの登録に 5$ ...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Chrome" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="chrome" label="Chrome" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p><img alt="screenshot_320.png" src="http://www.adakoda.com/adakoda/2014/12/07/screenshot_320.png" width="320" height="200" /></p>
<p>Chromeの「プロ生ちゃんのテーマ」をつくったよ。</p>
<p>ストアへの登録に 5$ とられたよ。</p>
<p>でも、テーマは無料だよ。</p>
<p><strike>Macでしか確認してないよ。</strike></p>
<p><strike>Windows環境だと、ちょっと変な色でるらしいよ（汗。</strike> →→→ 1.0.1 で修正しました。</p>
<p>&nbsp;</p>

<p><b>ダウンロード</b></p>
<p><a href="https://chrome.google.com/webstore/detail/pronama-chan-santa/nfkdmmigmmhfgekikhkbgmjgacdbpndc?hl=ja">Pronama chan santa - Chromeウェブストア</a></p>
<p>&nbsp;</p>

<p><b>テーマを戻すには</b></p>
<p>テーマを戻すには、Chrome menu （右上の三本線アイコン）をクリックして、</p><p>
</p><p>[設定] &gt; [デザイン] &gt; [デフォルトのテーマに戻す] から行ってください。</p>
<p>&nbsp;</p>

<p><b>アップデートをするには</b></p>
<p>古いバージョンがインストールされた状態で、新しいバージョンにアップデートする場合は、</p>
<p>一度、上記手順でデフォルトテーマに戻し、再度インストールしてください。</p>
<p>&nbsp;</p>

<p><b>不具合報告／改善要望</b></p>
<p>不具合報告、改善要望は Twitter アカウントまで頂けると有り難いです m_ _m</p>
<p>※ディスプレイによっては、ブックマークバーの彩度が高すぎて見づらいかもしれません＞＜</p>
<p>&nbsp;</p>

<p><b>更新履歴</b></p>
<p> - 1.0.2 : 自動更新に対応（したかも？、1.0.2をインストール後、1.0.3以降でわかるので (^^;）</p>
<p> - 1.0.1 : Windowsでフレームとブックマークバーの配色がデフォルトになる不具合を修正</p>
<p> - 1.0.0 : 新規作成</p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] RecyclerView を使ってみました</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/07/android-recyclerview.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.627</id>

    <published>2014-07-10T16:11:06Z</published>
    <updated>2014-07-10T16:13:02Z</updated>

    <summary>Android L Developer Preview、Material Des...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="androidl" label="Android L" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>Android L Developer Preview、Material Design で追加された新ウィジェット（※1）である <a href="http://developer.android.com/preview/material/index.html" <b="">RecyclerView</a> を使用してみました。</p>
<p>&nbsp;</p>

<p>RecyclerView を使用すると、アイテムのサイズが固定長の場合に、従来よりも良いパフォーマンスが得られる（※2）ほか、</p>
<p>アイテムの追加、削除時などのアニメーション（※3）についても、デフォルトで利用することができます。</p>
<p>&nbsp;</p>

<p>ちなみに RecyclerView のコードは、現時点（2014/7/11）では見れなかったのですが、前身のコード？っぽいのは、</p>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><p><u>sdk / sources / android-20 / android / support / v7 / widget / RecyclerView.java</u></p></blockquote>
<p>にありました（約5,700行）。</p>
<p>（ソースコード読んで、notifyItemInserted() や notifyItemRemoved() の存在に気づくなど。。。）</p>
<p>&nbsp;</p>

<p>以下、</p>
<p>従来の <b>ListView</b> ＆ BaseAdapter で実装した場合のソースコードと、</p>
<p><b>RecyvlerView</b> ＆ RecyvlerView.Adapter で実装した場合のソースコードを貼っておきました。</p>
<p>文章で書くよりもコードを見た方が分かり易いと思いますので、<u>コード内の番号をヒント</u>に比較してみてください。</p>
<p>&nbsp;</p>

<p><b>BaseAdapter（従来）のコード</b></p>
<pre class="prettyprint">public class SampleAdapter1 extends BaseAdapter {
    private LayoutInflater mLayoutInflater;
    private ArrayList&lt;String&gt; mDataList;

    // コンストラクタは、RecyclerView.Adapter でも変更なし
    public SampleAdapter1(Context context, ArrayList&lt;String&gt; dataList) {
        super();
        mLayoutInflater = LayoutInflater.from(context);
        mDataList = dataList;
    }

    // 4.RecyclerView.Adapter の場合、getItemCount() に書き換える
    @Override
    public int getCount() {
        return mDataList.size();
    }

    // RecyclerView.Adapter では不要
    @Override
    public Object getItem(int position) {
        return mDataList.get(position);
    }

    // RecyclerView.Adapter では不要
    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder viewHolder;
        if (convertView == null) {

            // 1.RecyclerView.Adapter の場合、この部分を onCreateViewHolder() で実装する
            // ViewHolder の引数には、インフレートしたビューを渡すように変更する
            convertView = mLayoutInflater.inflate(R.layout.list_item, parent, false);
            viewHolder = new ViewHolder();

            // 2.RecyclerView.Adapter の場合、この部分を ViewHolder のコンストラクタ内で実装する
            viewHolder.text = (TextView) convertView.findViewById(R.id.text);

            convertView.setTag(viewHolder);
        } else {
            viewHolder = (ViewHolder) convertView.getTag();
        }

        // 3.RecyclerView.Adapter の場合、この部分を onBindViewHolder() で実装する
        String data = (String) getItem(position);
        viewHolder.text.setText(data);

        return convertView;
    }

    static class ViewHolder {
        TextView text;
    }
}
</pre>
<p>&nbsp;</p>

<p><b>RecyvlerView.Adapter に書き換えた場合のコード</b></p>
<pre class="prettyprint">public class SampleAdapter2 extends RecyclerView.Adapter&lt;SampleAdapter2.ViewHolder&gt; {
    private LayoutInflater mLayoutInflater;
    private ArrayList&lt;String&gt; mDataList;

    public SampleAdapter2(Context context, ArrayList&lt;String&gt; dataList) {
        super();
        mLayoutInflater = LayoutInflater.from(context);
        mDataList = dataList;
    }

    @Override
    public SampleAdapter2.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        // 1
        View v = mLayoutInflater.inflate(R.layout.list_item, parent, false);
        ViewHolder viewHolder = new ViewHolder(v);
        return viewHolder;
    }

    // 4
    @Override
    public int getItemCount() {
        return mDataList.size();
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        // 3
        String data = (String) mDataList.get(position);
        holder.text.setText(data);
    }

    static class ViewHolder extends RecyclerView.ViewHolder {
        TextView text;

        public ViewHolder(View v) {
            super(v);
            // 2
            text = (TextView) v.findViewById(R.id.text);
        }
    }
}
</pre>
<p>&nbsp;</p>

<p><b>ListView（従来）のコード</b></p>
<pre class="prettyprint">ListView listView = (ListView) view.findViewById(R.id.listview);

// アダプターの設定（mDataList は、ここでは ArrayList&lt;String&gt;）
listView.setAdapter(new SampleAdapter1(getActivity(), mDataList));
</pre>
<p>&nbsp;</p>

<p><b>RecyvlerView に書き換えた場合のコード</b></p>
<pre class="prettyprint">RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.recyclerview);

// コンテキスト：Activity内ではthis、Fragment内ではgetActivity()など
recyclerView.setLayoutManager(new LinearLayoutManager(コンテキスト));
recyclerView.setHasFixedSize(true); // アイテムは固定サイズ

// アダプターの設定（mDataList は、ここでは ArrayList&lt;String&gt;）
recyclerView.setAdapter(new SampleAdapter2(getActivity(), mDataList));
</pre>
<p>&nbsp;</p>

<p><b>ListView（従来）のリソース</b></p>
<pre class="prettyprint">&lt;ListView
    android:id="@+id/listview"
    android:layout_width="match_parent"
    android:layout_height="match_parent" /&gt;
</pre>
<p>&nbsp;</p>

<p><b>RecyvlerView に書き換えた場合のリソース</b></p>
<pre class="prettyprint">&lt;android.support.v7.widget.RecyclerView
    android:id="@+id/recyclerview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scrollbars="vertical" /&gt;
</pre>
<p>&nbsp;</p>

<p><b>RecyvlerView.Adapter でデフォルトアニメーションを使用する例</b></p>
<pre class="prettyprint">// アイテム追加後、notifyItemInserted(index)を呼び出す（ここでは最後に追加）
recyclerView.getAdapter().notifyItemInserted(mDataList.size() - 1);

// アイテム削除後、notifyItemRemoved(index)を呼び出す（ここでは先頭を削除）
recyclerView.getAdapter().notifyItemRemoved(0);
</pre>
<p>&nbsp;</p>

<p><b>備考</b></p>
<p>
※1：N5だと、従来のListView と動作比較してみたところ、目に見えてわかるような差は体感できませんでした
</p>
<p>
※2：Material Design の追加ウィジェットは2つだけで、もう一方は以前紹介した <a href="http://www.adakoda.com/adakoda/2014/07/android-cardview.html">CardView</a>
</p>
<p>
※3：アニメーションは RecyclerView.ItemAnimator で自作したものへ置き換え可能
</p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] Reveal Effect でビューをかっこ良く切り替える</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/07/android-reveal-effect.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.626</id>

    <published>2014-07-07T12:49:30Z</published>
    <updated>2014-07-07T13:32:15Z</updated>

    <summary> Android L（API Level 21）のViewAnimationUt...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="androidl" label="Android L" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>
Android L（API Level 21）の<a href="https://developer.android.com/preview/material/animations.html#reveal"><b>ViewAnimationUtils.createCircularReveal</b></a>メソッドを使用すると、
</p>
<p>ビューに対して広がる（／またはその逆の）円状のクリッピングを適用したアニメーション効果を得る事ができます（表現困難...）。
</p>
<p>&nbsp;</p>

<p><b>サンプル動画</b></p>
<iframe width="420" height="315" src="//www.youtube.com/embed/rTqKXg39dQw" frameborder="0" allowfullscreen=""></iframe>
<p>※画面右端中央やや下のMapアイコンをタップしてビューを切り替えています</p>
<p>&nbsp;</p>

<p><b>切り替え前後のビュー（参考）</b></p>
<p>
<img alt="before.png" src="http://www.adakoda.com/adakoda/2014/07/07/before.png" width="270" height="480" />
<img alt="after.png" src="http://www.adakoda.com/adakoda/2014/07/07/after.png" width="270" height="480" />
</p>
<p>&nbsp;</p>

<p><b>サンプルソースコード</b></p>
<pre class="prettyprint">// Revealアニメーションを適用したいビュー
final View animationTarget = findViewById(R.id.information_container);

int cx = (view.getLeft() + view.getRight()) / 2;
int cy = (view.getTop() + view.getBottom()) / 2;
float radius = Math.max(animationTarget.getWidth(), animationTarget.getHeight()) * 2.0f;

if (animationTarget.getVisibility() == View.INVISIBLE) {
    // 切り替えたいビューが非表示の場合（最初は、こっちを通る）

    // これから表示するビューを表示する（アニメーション開始時には円の半径が0なので実質見えない）
    animationTarget.setVisibility(View.VISIBLE);

    // 円状のクリッピングを適用したアニメーションを開始する
    // 円は（数百ミリ秒で）あっという間に大きくなります
    ViewAnimationUtils.createCircularReveal(
            animationTarget, // アニメーション対象のビュー（これから表示したいビュー）
            cx, cy, // アニメーションの原点（＝円の中心）
            0,      // アニメーション開始時の円の半径
            radius  // アニメーション終了時の円の半径
    ).start(); // アニメーション開始
} else {
    // 切り替えたいビューが表示済の場合

    // 円状のクリッピングを適用したアニメーションを開始する
    // 円は（数百ミリ秒で）あっという間に小さくなります
    ValueAnimator reveal = ViewAnimationUtils.createCircularReveal(
            animationTarget, // アニメーション対象のビュー（これから表示したいビュー）
            cx, cy, // アニメーションの原点（＝円の中心）
            radius, // アニメーション開始時の円の半径
            0       // アニメーション終了時の円の半径
    );
    // アニメーション終了時に呼び出されるリスナを設定
    reveal.addListener(new AnimatorListenerAdapter() {
        @Override
        public void onAnimationEnd(Animator animation) {
            // アニメーション終了時に対象のビューを非表示にする
            animationTarget.setVisibility(View.INVISIBLE);
        }
    });
    reveal.start(); // アニメーション開始
}
</pre>
<p>※デモアプリのソースコードは、<a href="https://github.com/romainguy/google-io-2014">https://github.com/romainguy/google-io-2014</a></p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] android.support.v7.graphics.Palette がいい感じかも</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/07/android-androidsupportv7graphicspalette.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.625</id>

    <published>2014-07-06T16:32:19Z</published>
    <updated>2014-07-15T11:41:30Z</updated>

    <summary> Android L（API Level 21）のandroid.support...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="androidl" label="Android L" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>
Android L（API Level 21）のandroid.support.v7.graphics.<b>Palette</b> クラスを使用すると、指定した画像から、画像に使われている色を解析し、いい感じのパレット（6色分の色値）を計算してくれるようです。
</p>
<p>
取得した色をテキストやグレーアイコンに適用することで、画像にマッチした配色ができそうです（例えば、下図のフラミンゴだと、フラミンゴの色から、ピンク、赤、暗めの紺色の色などが Palette クラスから返される）。
</p>
<p>&nbsp;</p>

<p><b>Palette 呼び出し方</b></p>
<pre class="prettyprint">Palette palette = Palette.generate(photo); // photo は Bitmap

// get○○○Color()で任意のパレット色が取得できる

// VibrantColor
palette.getLightVibrantColor().getRgb();    // 明るい
palette.getVibrantColor().getRgb();
palette.getDarkVibrantColor().getRgb();     // 暗い

// MutedColor
palette.getLightMutedColor().getRgb();      // 明るい
palette.getMutedColor().getRgb();
palette.getDarkMutedColor().getRgb();       // 暗い
</pre>
<p>&nbsp;</p>

<p><b>Google I/O 2014 Material Witness で紹介されていたデモアプリ</b></p>
<p>
<img alt="1_PaciflcaPier.PNG" src="http://www.adakoda.com/adakoda/2014/07/07/1_PaciflcaPier.PNG" width="240" height="427" class="mt-image-none" style="font-size: 1em;" />
<img alt="2_PinkFlamingo.PNG" src="http://www.adakoda.com/adakoda/2014/07/07/2_PinkFlamingo.PNG" width="240" height="427" /></p>
<p><img alt="3_AntelopeCanyon.PNG" src="http://www.adakoda.com/adakoda/2014/07/07/3_AntelopeCanyon.PNG" width="240" height="427" />
<img alt="4_LonePine.PNG" src="http://www.adakoda.com/adakoda/2014/07/07/4_LonePine.PNG" width="240" height="427" /></p>
<p>※デモアプリのソースコードは、<a href="https://github.com/romainguy/google-io-2014">https://github.com/romainguy/google-io-2014</a></p>
<p>※キャプチャは、取得できるパレット色の名前と値を表示するように手を加えています</p>
<p>&nbsp;</p>

<p>どんな風に色を選択しているか興味深く、Android L のソースコード公開が待ち遠しいです。
</p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] CardView を試してみました</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/07/android-cardview.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.624</id>

    <published>2014-07-01T13:15:06Z</published>
    <updated>2014-07-01T13:50:55Z</updated>

    <summary> Android L Developer Preview で追加された UI 部...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="androidl" label="Android L" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="materialdesign" label="Material Design" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>
Android L Developer Preview で追加された UI 部品である <a href="https://developer.android.com/preview/material/ui-widgets.html#cardview">CardView</a> を試してみました。
</p>
<p>&nbsp;</p>

<p><b>動画</b></p>
<p>
<iframe width="420" height="315" src="//www.youtube.com/embed/XD6JCKT6wPU" frameborder="0" allowfullscreen=""></iframe>
</p>
<p>カードのふちが角丸（影つき）になっているのが見えますかね。。。</p>
<p>丸みは cardCornerRadius で指定するようです。</p>
<p>&nbsp;</p>

<p><b>サンプルリソース</b></p>
<pre class="prettyprint">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:padding="8dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"&gt;

    &lt;android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="8dp"&gt;

        &lt;ImageView
            android:id="@+id/image"
            android:layout_width="match_parent"
            android:layout_height="280dp"
            android:scaleType="centerCrop" /&gt;

    &lt;/android.support.v7.widget.CardView&gt;

&lt;/LinearLayout&gt;

</pre>
<p>&nbsp;</p>

<p>あれっ？？？</p>
<p>角が丸いだけの View ？？？</p>
<p>&nbsp;</p>
<p>（そうだ、yanzm 先生の Android Pattern Cookbook に載ってたカードビューをみてみよう）</p>
<p>&nbsp;</p>

<p><b>Android Pattern Cookbook に載ってたカードビューのリソース</b></p>
<pre class="prettyprint">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    android:paddingTop="16dp" &gt;

    &lt;LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/card_item_bg2"
        android:orientation="vertical" &gt;

        &lt;ImageView
            android:id="@+id/image"
            android:layout_width="match_parent"
            android:layout_height="@dimen/thumbnail_height"
            android:contentDescription="@string/thumbnail"
            android:scaleType="centerCrop" /&gt;

    &lt;/LinearLayout&gt;

    &lt;View
        android:layout_width="match_parent"
        android:layout_height="4dp"
        android:background="@drawable/card_shadow" /&gt;

&lt;/LinearLayout&gt;
</pre>

<p>あれっ？？？</p>
<p>yanzm せんせいのとコード量、ほとんど変わらないw</p>
<p>CardView さん...</p>
<p>きっと、ボクが何か勘違いしているに違いない...</p>
<p>&nbsp;</p>

<p><b>あわせて読みたい</b></p>
<ul>
	<li><a href="http://firespeed.org/diary.php?diary=kenz-1737">L Developer Preview マテリアルデザインを始める - Firespeed</a></li>
	<li><a href="http://www.impressjapan.jp/books/1113101126">Android Pattern Cookbook マーケットで埋もれないための差別化戦略 | Impress</a></li>
</ul>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] Support Library に追加された SwipeRefreshLayout</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/03/android-support-library-swiperefreshlayout.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.622</id>

    <published>2014-03-29T02:12:33Z</published>
    <updated>2014-03-29T14:42:19Z</updated>

    <summary>Android Support Library, revision 19.1.0...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="supprtlibrary" label="SupprtLibrary" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p><a href="http://developer.android.com/tools/support-library/index.html">Android Support Library, revision 19.1.0</a> で <b>SwipeRefreshLayout</b> が追加されました。</p>
<p>SwipeRefreshLayout とは、下方向のスワイプジェスチャーを検出してプログレスを表示するためのもので、</p>
<p>アプリの情報更新手段として使用できます。</p>
<p>類似の機能は、これまでは各アプリ独自に実装していたと思いますが、Support Library を使用することで、簡単に使用できます。</p>
<p>※2014/3/29追記：<a href="http://tatsu-zine.com/books/effective-android">Effective Android</a> の</p>
<p>　<a href="https://github.com/TechBooster/effective_android_sample">「第4章　引っ張って更新するPullToRefresh UIを使ったListViewを作る」</a>の方がおすすめだよ（みんなには内緒だよ！）</p>
<p>&nbsp;</p>
<p><b>SwipeRefreshLayout</b></p>
<ul>
<li><a href="http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html">com.example.android.supportv4.widget.SwipeRefreshLayout</a></li>
</ul>
<p>&nbsp;</p>
<p><b>使い方</b></p>
<p>1. <a href="http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html#setOnRefreshListener(android.support.v4.widget.SwipeRefreshLayout.OnRefreshListener)">SwipeRefreshLayout#setOnRefreshListener()</a> を呼び出し、スワイプ時のリスナを登録する</p>
<p>2. スワイプ時に呼び出されるリスナ <a href="http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.OnRefreshListener.html#onRefresh()">SwipeRefreshLayout.OnRefreshListener#onRefresh()</a> で更新中の処理を行う</p>
<p>3. 更新後、<a href="http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html#setRefreshing(boolean)">SwipeRefreshLayout#setRefreshing(false)</a> でプログレスを終了させる</p>
<p>&nbsp;</p>
<p>※a. <a href="http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html#setRefreshing(boolean)">SwipeRefreshLayout#setRefreshing(true)</a> を呼び出す事で、メニューアイテム押下時など、</p>
<p>　スワイプ以外の任意のトリガでもプログレスを開始できる</p>
<p>※b. <a href="http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html#setColorScheme(int, int, int, int)">SwipeRefreshLayout#setColorScheme()</a> を呼び出す事で、プログレスの色もカスタマイズできます</p>
<p>&nbsp;</p>
<p><b>サンプル</b></p>
<p>
<iframe width="420" height="315" src="//www.youtube.com/embed/6gNiyhU7h5k" frameborder="0" allowfullscreen=""></iframe>
</p>
<p>サンプルアプリは、sdk / extras / android / support / samples / <b>Support4Demos</b> にありました（上記動画）。</p>
<p>以下、Support4Demos 内のソースコード（Apache License, Version 2.0）の抜粋です。</p>
<p>&nbsp;</p>
<p><b>サンプルリソース</b>（swipe_refresh_widget_sample.xml）</p>
<pre class="prettyprint">&lt;android.support.v4.widget.SwipeRefreshLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/swipe_refresh_widget"
    android:layout_width="match_parent"
    android:layout_height="match_parent"&gt;
    &lt;ListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/content"/&gt;
&lt;/android.support.v4.widget.SwipeRefreshLayout&gt;
</pre>

<p>&nbsp;</p>
<p><b>サンプルソースコード</b>（SwipeRefreshLayoutActivity.java）</p>
<pre class="prettyprint">public class SwipeRefreshLayoutActivity extends Activity implements OnRefreshListener {
    public static final String[] TITLES =
    {
            "Henry IV (1)",
            "Henry V",
・・・省略・・・
             "Othello",
            "King Lear"
    };
    private SwipeRefreshLayout mSwipeRefreshWidget;
    private ListView mList;
    private Handler mHandler = new Handler();
    private final Runnable mRefreshDone = new Runnable() {

        @Override
        public void run() {
            // 3. プログレスを終了させる
            mSwipeRefreshWidget.setRefreshing(false);
        }

    };
    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.swipe_refresh_widget_sample);
        mSwipeRefreshWidget = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh_widget);
        mSwipeRefreshWidget.setColorScheme(R.color.color1, R.color.color2, R.color.color3,
                R.color.color4);
        mList = (ListView) findViewById(R.id.content);
        ArrayAdapter&lt;String&gt; arrayAdapter = new ArrayAdapter&lt;String&gt;(this,
                android.R.layout.simple_list_item_1, android.R.id.text1, TITLES);
        mList.setAdapter(arrayAdapter);
        // 1. スワイプ時のリスナを登録する（implements OnRefreshListener）
        mSwipeRefreshWidget.setOnRefreshListener(this);
    }

    @Override
    public void onRefresh() {
        // 2. スワイプ時に呼び出される、ここで更新中の処理を行う
        refresh();
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.swipe_refresh_menu, menu);
        return true;
    }

    /**
     * Click handler for the menu item to force a refresh.
     */
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        final int id = item.getItemId();
        switch(id) {
            case R.id.force_refresh:
                // a. メニューアイテム押下時など、スワイプ以外の任意のトリガでもプログレスを開始できる
                mSwipeRefreshWidget.setRefreshing(true);
                refresh();
                return true;
        }
        return false;
    }

    private void refresh() {
        // このアプリでは更新処理のダミーとして1秒後に更新終了処理を呼び出している
        mHandler.removeCallbacks(mRefreshDone);
        mHandler.postDelayed(mRefreshDone, 1000); // 3000にすると3秒間プログレスが表示されるよ
    }
}
</pre>
<p>&nbsp;</p>
<p><b>あわせて読みたい</b></p>
<ul>
<li><a href="http://www.adakoda.com/adakoda/2014/03/android-android-pattern-cookbook.html">「Android Pattern Cookbook」を読みました</a></li>
</ul>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] 「Android Pattern Cookbook」を読みました</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/03/android-android-pattern-cookbook.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.621</id>

    <published>2014-03-19T22:43:22Z</published>
    <updated>2014-03-19T22:48:03Z</updated>

    <summary> インプレスジャパン様から『Android Pattern Cookbook』を...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="books" label="Books" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>
<img alt="cookbooks.JPG" src="http://www.adakoda.com/adakoda/2014/03/20/cookbooks.JPG" height="240" width="320" />
</p>
<p>インプレスジャパン様から<b>『Android Pattern Cookbook』</b>をちょうだいいたしましたので紹介させていただきます。</p>
<p>&nbsp;</p>

<p>Android Cookbook シリーズ第三弾となる今回は、待望の<b>フルカラー</b>、288ページで、本日 2014年3月20日（木）発売！</p>
<p>Navigation Drawer から カスタムビュー まで、いま流行の UI を実装する方法が解説されています。</p>
<p>
<img alt="1.2-2s.PNG" src="http://www.adakoda.com/adakoda/2014/03/20/1.2-2s.PNG" height="160" width="90" />
<img alt="1.5-2s.PNG" src="http://www.adakoda.com/adakoda/2014/03/20/1.5-2s.PNG" height="160" width="90" />
<img alt="2.6s.PNG" src="http://www.adakoda.com/adakoda/2014/03/20/2.6s.PNG" height="160" width="90" />
<img alt="7.1s.PNG" src="http://www.adakoda.com/adakoda/2014/03/20/7.1s.PNG" height="160" width="90" />
</p>
<p>特に第7章は、</p>
<p>
</p><ul>
<li>カードUI</li>
<li>ショーケース</li>
<li>スワイプオフできるリスト</li>
<li>ヘッダーが残るリスト</li>
<li>スクロール位置に応じて透明度が変わるActionBar</li>
<li>FastScroll + インデックスラベル</li>
<li>ログイン画面</li>
<li>オリジナルのプログレス</li>
<li>パターンロック</li>
<li>ドラッグ＆ドロップコンテキストメニュー</li>
<li>下にスワイプして更新</li>
</ul>
<p></p>
<p>など、他では読む事ができない貴重な情報が詰まっており、非常にお買い得な内容になっていると思います。</p>
<p>この本を読めば、長らく Android 開発とはご無沙汰状態なワタクシでも、</p>
<p>最近の Google+、Facebook、Feedly、Gmail のような UI を持つアプリを実装できそうです\^^/</p>
<p>&nbsp;</p>

<p><b>サンプルアプリ</b></p>
<p>
<img alt="AndroidPatternCookbook.PNG" src="http://www.adakoda.com/adakoda/2014/03/20/AndroidPatternCookbook.PNG" height="94" width="320" />
</p>
<p>本書のデモアプリは、以下のリンク先 （Google Play）で公開されています。</p>
<p>
<a href="https://play.google.com/store/apps/details?id=yanzm.products.patterncookbook">https://play.google.com/store/apps/details?id=yanzm.products.patterncookbook</a>
</p>
<p>
以下にデモアプリ「第4章 ViewPager」の一部を録画しましたので、参考にしてみてください^^</p>
<p>
<iframe src="//www.youtube.com/embed/FBTcIMTw3X8" allowfullscreen="" frameborder="0" height="315" width="420"></iframe>
</p>
<p>&nbsp;</p>

<p><b>サンプルソースコード</b></p>
<p>本書で解説されているソースコードは、（近いうちに？）<a href="http://www.impressjapan.jp/books/1113101126">インプレスさんサイト</a>からダウンロードできます。</p>
<p>以下は、ActionBar の背景を（コードで）グラデーションするリソースの抜粋。</p>
<pre class="prettyprint">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;shape xmlns:android="http://schemas.android.com/apk/res/android"&gt;
    &lt;gradient
        android:angle="270"
        android:endColor="@color/main_color_dark"
        android:startColor="@color/main_color_dark"
        android:type="linear" /&gt;
&lt;/shape&gt;</pre>
<img alt="action_grad.png" src="http://www.adakoda.com/adakoda/2014/03/20/action_grad.png" height="75" width="320" />
<p>&nbsp;</p>

<p><b>おわりに</b></p>
<p>やんざむさん曰く、Android Pattern Cookbook は、書籍制作にあたり、<a href="https://github.com/kmuto/review">Re:VIEW</a> を使用されているそうです。</p>
<p>Re:VIEW による美しい仕上がり、、、凄い！凄いよ、ほむらちゃん！</p>
<p>また、2014年3月21日（金）には、Android Bazaar and Conference 2014 Spring が開催されます。</p>
<p>当日は、『Android Pattern Cookbook』だけでなく、てくぶの『Effective Android』、</p>
<p>のぶさとさん監修の『Smashing Android UI』など、Android関連書籍の販売会もあるようですので、</p>
<p>当日参加される方は、バザールのインプレスさんブース（え3）で書籍を手に取って確認してみてください！</p>
<p>（うわさでは、サイン会もある！？かも。。。裏山。。。）</p>
<p>&nbsp;</p>

<p><b>あわせて読みたい</b></p>
<ul>
<li><a href="http://www.impressjapan.jp/books/3174">Android UI Cookbook for 4.0　ICS（Ice Cream Sandwich）アプリ開発術</a>・・・Cookbook本 第二弾</li>
<li><a href="http://www.impressjapan.jp/books/2987">Android Layout Cookbook　アプリの価値を高める開発テクニック</a>・・・Cookbook本 第一弾</li>
<li><a href="http://y-anz-m.blogspot.jp/2014/03/android-pattern-cookbook.html">Y.A.M の 雑記帳: Android Pattern Cookbookを執筆しました。</a>・・・ブログ</li>
<li><a href="http://www.slideshare.net/yanzm/supporting-multiscreen">マルチスクリーン対応と最近のアプリの傾向</a>・・・ABC2013s講演資料</li>
</ul>
<p>&nbsp;</p>
<p>
<small>※本エントリの内容は、2014年3月20日時点のものです</small></p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] 『Android SDK ポケットリファレンス』を読みました</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2014/03/android-android-sdk-1.html" />
    <id>tag:www.adakoda.com,2014:/adakoda//1.620</id>

    <published>2014-03-13T13:46:25Z</published>
    <updated>2014-03-13T14:05:13Z</updated>

    <summary> Android 界の（元）Flappy Bird 王の adakoda です。...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="android入門" label="Android入門" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p><img alt="cover.png" src="http://www.adakoda.com/adakoda/2014/03/11/cover.png" width="284" height="172" /></p>

<p>Android 界の<strike>（元）</strike><a href="http://p.twipple.jp/fzOcg">Flappy Bird 王</a>の adakoda です。</p>

<p>Android 界の シゲちゃんこと「しげむら こうじ」さんから、</p>

<p>『<b>Android SDK ポケットリファレンス</b>』本をちょうだいいたしましたので紹介させていただきます。</p>
<p>&nbsp;</p>

<p><b>書籍の情報（技術評論社）</b></p>
<ul>
<li><a href="http://gihyo.jp/book/2014/978-4-7741-6335-2">書籍案内</a>・・・概要／目次</li>
<li><a href="http://gihyo.jp/book/2014/978-4-7741-6335-2/support">サポートページ</a>・・・サンプルコードダウンロード（Gitがわからない初心者の方でもzipで一括DL可）</li>
<li><a href="https://github.com/shige0501/android-sdk-pokeri">サンプルソース</a>・・・GitHubソースコード</li><li>対象読者＝初級者〜中級者（中級向けの内容は ActionBar 、support.v○ 系、Google Map v2など）</li><li>ページ数・・・約500ページくらい</li>
</ul>
<p>&nbsp;</p>

<p><b>書籍の内容</b></p>
<p>技術評論社の<a href="http://gihyo.jp/book/series?s=%E3%83%9D%E3%82%B1%E3%83%83%E3%83%88%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9">ポケットリファレンス本</a>ということで、</p>
<p>やりたいこと（目的）から APIの使い方を見つけられる「逆引き系」の書籍となっています。</p>
<p>各目的毎の解説については、1〜数ページで構成されているため、必要なページ／興味あるページから読み進めることができます。</p>
<p>ソースコードの説明については、紙面の都合上、必要な部分の抜粋となっていますが、</p>
<p>すべてのソースコードは、インポート可能なプロジェクト形式で公開されているため、自分で実行して試すことができます。</p>
<p>&nbsp;</p>

<p><b>本書を読むべき方</b></p>
<p>書籍の内容を読んでみた印象としては、「これから Android アプリの開発を初めてみたい！」</p>
<p>という方が一番フィットするのではないか思いました（※個人の感想です）。</p>
<p>使い方としては、以下の流れが良いと思います。</p>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;">
<p>1. 気になる機能の解説に該当するページを斜め読みする</p>
<p>2. 該当のソースコードをダウンロード、実行し、動作を確認する</p>
<p>3. もういちど解説ページの詳細を読んで、値を変更するなど、ソースコードを変更し、変化を確認する</p>
</blockquote>
<p>&nbsp;</p>

<p><b>サンプルソース紹介</b></p>
<p>例えば、オーバースクロール時に何かをしたい時（ひっぱって情報の更新とか）のソースコードは、</p>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><p><a href="https://github.com/shige0501/android-sdk-pokeri/tree/master/Chapter03/ui_OverScroll">shige0501 / android-sdk-pokeri / Chapter03 / ui_OverScroll</a></p></blockquote>
<p>にあります。</p>
<p>※以下のソースコードは、公開されているソースコードの引用です</p>
<pre class="prettyprint">package net.buildbox.pokeri.ui_overscroll;

import android.content.Context;
import android.util.AttributeSet;
import android.util.Log;
import android.widget.ListView;

public class OverScrollView extends ListView {
	private static final String TAG = "OverScrollView";
	
	public OverScrollView(Context context) {
		super(context);
		
		// オーバースクロールモードの設定
		setOverScrollMode(OVER_SCROLL_ALWAYS);
	}
	
	public OverScrollView(Context context, AttributeSet attrs) {
		super(context, attrs);

		// オーバースクロールモードの設定
		setOverScrollMode(OVER_SCROLL_ALWAYS);
	}
	
	// オーバースクロールとしてonOverScrolledを呼び出す条件を指定
	@Override
	protected boolean overScrollBy(int deltaX, int deltaY, int scrollX,
			int scrollY, int scrollRangeX, int scrollRangeY,
			int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent) {
		return super.overScrollBy(0, deltaY, 0, scrollY, 0,
				scrollRangeY, 0, 100, isTouchEvent);
	}
	
	// オーバースクロール時の処理
	@Override
	protected void onOverScrolled(int scrollX, int scrollY, boolean clampedX,
			boolean clampedY) {
		// オーバースクロールの情報のデバッグ出力
		Log.d(TAG, "call onOverScrolled(): "
			+ "scrollX=" + scrollX
			+ ", scrollY=" + scrollY
			+ ", clampedX=" + clampedX
			+ ", clampedY=" + clampedY);
		super.onOverScrolled(scrollX, scrollY, clampedX, clampedY);
	}
}
</pre>
<p>&nbsp;</p>

<p><b>おわりに</b></p>
<p>単著って大変ですよね。。。500ページとかレビューアも死ぬと思います。。。</p>
<p>Fragment のあたりは、さすがに少ないページ量だとちょっと説明が少なかったかも^^;。。。</p>
<p>ということで、次回は上級者向けお願いします^^;</p>
<p>ブログが「かけなび化」してるにも関わらず本を送っていただきありがとうございましたm_ _m</p>
<p>&nbsp;</p>

<p><b>あわせて読みたい</b></p>
<ul>
<li><a href="http://keikudo.com/days/4098">夫が、初めての単著「Android SDK ポケットリファレンス」を出します。 - keikudo.com</a></li>
</ul>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] Android Screen Monitor 3.00</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/12/android-android-screen-monitor-300.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.608</id>

    <published>2013-12-17T13:30:16Z</published>
    <updated>2013-12-17T14:54:50Z</updated>

    <summary>PCからのキーボード操作に対応した Android Screen Monitor...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="androidscreenmonitor" label="AndroidScreenMonitor" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>PCからのキーボード操作に対応した Android Screen Monitor Ver.3.00 を公開しました。</p> 
<ul>
<li><a href="http://adakoda.github.io/android-screen-monitor/">Android Screen Monitor</a></li></ul>
<p>&nbsp;</p>
<img alt="asm3_large.PNG" src="http://www.adakoda.com/adakoda/2013/12/17/asm3_large.PNG" width="421" height="320" class="mt-image-none" />
<p>競合する？別のツールでは昔から対応されていた機能なので、今さら・・・と言われるとショボーンなんですけど、それはそれで^^;</p>
<p>&nbsp;</p>
<p>ちなみに、この機能は、<a href="https://twitter.com/thorikawa">@thorikawa</a>さんが実装され、GitHub 上のリポジトリへPull Request（PR）していただいたものです。m_ _m</p>
<p>これまでの <a href="https://code.google.com/p/android-screen-monitor/">Google Code</a> の方は、2014年1月以降ダウンロード機能がなくなる？らしいので、ソースコードは、GitHub へお引っ越しました。</p>
<p>branch は多数切っていますが、PR は development まで頂けると有り難いです（Mac版で初期表示のサイズがおかしいの絶賛放置してるし）。</p>
<p>&nbsp;</p>
<ul>
<li><a href="https://github.com/adakoda/android-screen-monitor">adakoda/android-screen-monitor on GitHub</a></li>
</ul>
<p>&nbsp;</p>
<p>もともと、このツールを作った時は、画面サイズが320x480(16bpp)<span style="font-size: 1em;">の時代で、1フレームの転送サイズが300KBだったのですが、Nexus 5だと1920x1080(32bpp</span>)なので<span style="font-size: 1em;">7.9MB、さすがに使えないなー、というのが正直なところ。Galaxy Nexusの720x1280(32bpp)より大きい画面サイズでは使わないでね！</span></p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] バッテリー残量のパターンを確認できる便利なコマンド</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/12/android-50.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.607</id>

    <published>2013-12-10T22:42:29Z</published>
    <updated>2013-12-10T22:53:13Z</updated>

    <summary> バッテリー残量の画像の確認って大変ですよね（約100枚あるし）。。。 放置した...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="simplebatterystatus" label="Simple Battery Status" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[ <p>バッテリー残量の画像の確認って大変ですよね（約100枚あるし）。。。</p>
<p>放置したり、充電したり。。。</p>
<p>そんなあなたに朗報です。</p>
<p>以下のコマンドを実行すれば、電池残量0〜100%の画像をアニメーションで確認できます！</p>
<pre class="prettyprint">adb shell am broadcast -a com.android.systemui.BATTERY_LEVEL_TEST
</pre>
<p>※ただし、どのバージョンから対応しているかは未確認です^^</p>
<p>※ウィジェットの方は、タップしてあげないと反応してくれない場合もありました</p>
<p>&nbsp;</p>
<p>詳しくは以下の動画（約40秒）を参照してください。</p>
<p>※ステータスバー左上と右上、そして、ホーム上の2つのウィジェットに注目！</p>
<iframe width="420" height="315" src="//www.youtube.com/embed/-Sw129jQ_0k" frameborder="0" allowfullscreen=""></iframe>
<p>&nbsp;</p>
<p>このコマンドを使用すれば、開発者だけでなく、ユーザーも、購入したバッテリー残量アプリの表示確認が簡単にできますね！</p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] 長時間録画できるscreenrecordを作りました</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/12/android-49.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.606</id>

    <published>2013-12-08T07:21:38Z</published>
    <updated>2013-12-08T09:33:18Z</updated>

    <summary> 長時間録画できる screenrecord （名付けてscreenrecord...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="kitkat" label="KitKat" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>
<img alt="screenrecordex.PNG" src="http://www.adakoda.com/adakoda/2013/12/08/screenrecordex.PNG" width="331" height="111" /></p>
<p>長時間録画できる screenrecord （名付けてscreenrecord<b>ex</b>）を作りました。</p>
<p>といっても、ソースコードを1行変更して、最大録画時間を3分から60分に変更しただけですが^^;</p>
<p>&nbsp;</p>
<p>試しに Shooting Star の画面を 1 時間録画してみたところ、約118MBのmp4ファイルが無事出力されました。</p>
<p>&nbsp;</p>
<p>以下のサイトからビルド済バイナリをダウンロードできます。</p>
<p>※Nexus5（Androd 4.4）でのみ動作確認済です</p>
<ul>
<li><a href="http://adakoda.github.io/screenrecordex/">screenrecordex</a></li>
</ul>
<p>&nbsp;</p>

<p><strong>ソースコード</strong></p>
<ul>
<li><a href="https://github.com/adakoda/screenrecordex">adakoda/screenrecordex - GitHub</a></li>
</ul>
<p>※ライセンスは Apache License Version 2.0 です</p>
<p>&nbsp;</p>

<p><strong>FAQ</strong></p>
<p>Q：「需要はあるの？」</p>
<p>A：「知りません。自分が使いたかっただけです。」</p>

<p>&nbsp;</p>
<p><strong>あわせて読みたい</strong></p>
<ul>
<li><a href="http://www.adakoda.com/adakoda/2013/11/android-screenrecord.html">[Android] screenrecord で録画してみました - adakoda</a></li>
</ul>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] Android 4.4 の印刷機能が日本語環境で落ちる問題 その後</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/12/android-android-44-1.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.605</id>

    <published>2013-12-07T04:08:42Z</published>
    <updated>2013-12-07T04:31:18Z</updated>

    <summary>Android 4.4.1で日本語環境で印刷すると落ちる不具合が修正されました。...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="kitkat" label="KitKat" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>Android 4.4.1で日本語環境で印刷すると落ちる不具合が修正されました。</p>
<p>ありがとう眼鏡パッチ。</p>
<p>&nbsp;</p>

<blockquote class="twitter-tweet" lang="ja"><p>これは <a href="https://twitter.com/adakoda">@adakoda</a> さん大勝利？ <a href="http://t.co/fQfIlJPChq">pic.twitter.com/fQfIlJPChq</a></p>-- なかみちと (@8796n) <a href="https://twitter.com/8796n/statuses/408803752317960192">2013, 12月 6</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<p>

</p>

<blockquote class="twitter-tweet" lang="ja"><p>Android4.4.1で日本語環境で印刷すると落ちる不具合が修正されたことを確認できました。印刷してPDF変換、Google Docsへアップロードするアプリで確認。 <a href="http://t.co/otY4MihFXI">http://t.co/otY4MihFXI</a></p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/409171185700585472">2013, 12月 7</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<p>&nbsp;</p>
<p>
<b>あわせて読みたい</b>
</p><ul>
<li><a href="http://juggly.cn/archives/101571.html">Nexus 5におけるAndroid 4.4.1（KOT49E）の変更内容を紹介、タッチバイブが強力になったほか、印刷機能の強制終了もなくなりました | juggly.cn</a></li>
<li><a href="https://android.googlesource.com/platform/build/+/kitkat-mr1-release">kitkat-mr1-release - platform/build - Git at Google</a></li>
</ul>
<p></p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] AppOps を起動する（Android 4.4 編）</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/11/android-android-44-appops.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.604</id>

    <published>2013-11-20T22:32:33Z</published>
    <updated>2013-11-23T08:12:09Z</updated>

    <summary>  Android 4.4 の AppOps（アプリ別パーミッション設定アプリ）...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="appops" label="AppOps" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="kitkat" label="KitKat" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[ <p>

Android 4.4 の AppOps（アプリ別パーミッション設定アプリ） は設定画面から起動するメニューがありませんが、<br />以下のコマンドで起動することができました。
</p>
 <p>
</p><pre class="prettyprint">adb shell am start -n com.android.settings/com.android.settings.Settings \
 -e :android:show_fragment com.android.settings.applications.AppOpsSummary \
 --activity-clear-task --activity-exclude-from-recents
</pre>
<p></p>
<p>※-e の前の\（バックスラッシュ）はブログの画面幅の都合上入れていますが、下図のように\ なしの1行でも良いです<br />
<strike>※コマンド実行前に設定アプリの画面が表示されていると上手くいかないので、画面が表示されていない状態で呼び出してください</strike><br />
※本呼び出しによる動作結果については自己責任でお願いします^^;<br />
※追記(11/21)：$AppOpsSummaryActivityは不要でしたので削除しました（あっても問題ないですが）<br />
　その後の完璧な情報は「<a href="http://brightechno.com/blog/archives/199">Android 4.3.1と4.4でAppOpsを呼び出す方法 | ブライテクノBlog</a>」参照<br />
※追記(11/22)：@youten_redo さんがアプリにしてくれたよ！「<a href="https://play.google.com/store/apps/details?id=youten.redo.appopskk">AppOps for KitKat</a>」<br />
※追記(11/23)：オプションを @chun_ryo さんの記事にあわせました
</p>
<p>&nbsp;</p>
<p><b>AppOps 画面</b></p>
<p>
以前のバージョンと異なり、マルチペイン（位置情報／プライベート／メッセージ／メディア／端末）で表示されます。</p>
<img alt="p1.png" src="http://www.adakoda.com/adakoda/2013/11/21/p1.png" width="270" height="480" />
<p>&nbsp;</p>

<p>
リストのアイテム（インストールされている任意のアプリ）を選択すると、<br />アプリが使用しているパーミッションが表示され、パーミッションのON／OFFを切り替えることができます。</p>
<img alt="detail.png" src="http://www.adakoda.com/adakoda/2013/11/21/detail.png" width="270" height="480" />

<p>&nbsp;</p>
<p><b>あわせて読みたい</b></p>
<p>
</p><ul>
	<li><a href="http://japanese.engadget.com/2013/07/26/android-4-3/">Android 4.3 にアプリ別パーミッション設定の隠し機能が見つかる、有効化アプリ公開 - Engadget Japanese</a></li>
	<li><a href="http://brightechno.com/blog/archives/96">Android 4.3 の隠し機能 AppOpsについていろいろ | ブライテクノBlog</a></li>
</ul>
<p></p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] Android 4.4 の印刷機能が日本語環境で落ちる問題</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/11/android-android-44.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.603</id>

    <published>2013-11-19T16:28:42Z</published>
    <updated>2013-11-19T17:08:35Z</updated>

    <summary>https://t.co/e0SF1S04ey KitKat 4.4 でシステム...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="kitkat" label="KitKat" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<blockquote class="twitter-tweet" lang="ja"><p><a href="https://t.co/e0SF1S04ey">https://t.co/e0SF1S04ey</a> KitKat 4.4 でシステムの言語設定を日本語にして印刷しようとすると死ぬ(英語だと大丈夫)現象があったので報告した。</p>-- わかめ@TypeScript (@vvakame) <a href="https://twitter.com/vvakame/statuses/398842521091964928">2013, 11月 8</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>日本語環境で印刷時に落ちるの多分原因わかった。
眼鏡パッチが期待される。

<a href="http://t.co/lNFKeuQhcl">http://t.co/lNFKeuQhcl</a>
の24行目のJIS_b5をJIS_B5にすればよいと思われる（多分）。</p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/399203291004809216">2013, 11月 9</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>日本語環境で登録している用紙リストで"JIS_B5"で登録しているけど、大文字小文字区別されてヒットせず、ヌルポになっていると思われる。
<a href="http://t.co/L5nTMAJlmH">http://t.co/L5nTMAJlmH</a></p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/399203980867149824">2013, 11月 9</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>デバッグした訳ではないので予想ですが。</p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/399204089818411008">2013, 11月 9</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p><a href="https://twitter.com/adakoda">@adakoda</a> <a href="https://t.co/l6BIojFO2D">https://t.co/l6BIojFO2D</a></p>-- Keiji ARIYAMA (@keiji_ariyama) <a href="https://twitter.com/keiji_ariyama/statuses/400602217683492865">2013, 11月 13</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>キャー眼鏡パッチ素敵！
何故"MediaSize ID have to be upper cases."なのかをレビューワが気づいてくれるかが心配ではありますが^^;</p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/400602805636853760">2013, 11月 13</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>眼鏡パッチ
Code-Review+1
ってなってた。
もっとつかないかな。</p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/400981540810665984">2013, 11月 14</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>わかめ氏が起票して、眼鏡氏がパッチあてたAndroid4.4の日本語環境で印刷が落ちる問題、パッチあてて作成したエミュレータで動作確認し、問題なく動作することを確認できました。
JIS B5カワイイヨ。
JIS B5カワイイヨ。</p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/402834681126600704">2013, 11月 19</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>これね。
この後、PDF変換も試して問題なかったよ。 <a href="http://t.co/UrSjuXP1yT">http://t.co/UrSjuXP1yT</a></p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/402835138255417344">2013, 11月 19</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" lang="ja"><p>ということで、Issue 61984に、もっと★つくといいなー。
<a href="https://t.co/Qfio9L455I">https://t.co/Qfio9L455I</a></p>-- ⓐⓓⓐⓚⓞⓓⓐ.プログラミングだけが恋人 (@adakoda) <a href="https://twitter.com/adakoda/statuses/402843722536067073">2013, 11月 19</a></blockquote>
<script async="" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<p>
※2013年11月20日現在、★19
</p>
<p>&nbsp;</p>
<p>
<b>あわせて読みたい</b>
</p>
<ul>
<li><a href="http://visible-true.blogspot.jp/2013/11/android-44-printing-framework.html">visible true: Android 4.4 詳解 Printing Framework 前編</a></li>
<li><a href="http://visible-true.blogspot.jp/2013/11/android-44-printing-framework_17.html">visible true: Android 4.4 詳解 Printing Framework 後編</a></li>
<li><a href="http://www.mebic.com/event/4319.html">ITに関わる差別化と、優位性の確保｜メビック扇町</a></li>
</ul>
<p></p>]]>
        
    </content>
</entry>

<entry>
    <title>[Android] screenrecord で録画してみました</title>
    <link rel="alternate" type="text/html" href="http://www.adakoda.com/adakoda/2013/11/android-screenrecord.html" />
    <id>tag:www.adakoda.com,2013:/adakoda//1.601</id>

    <published>2013-11-09T05:32:34Z</published>
    <updated>2013-11-09T06:20:45Z</updated>

    <summary>Android 4.4 KitKat で追加された Android SDK 付属...</summary>
    <author>
        <name>adakoda</name>
        
    </author>
    
        <category term="Android" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="androidkitkatscreenrecord" label="Android KitKat screenrecord" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.adakoda.com/adakoda/">
        <![CDATA[<p>Android 4.4 KitKat で追加された Android SDK 付属の screenrecord でアプリを録画してみました。</p><p>以下、検証動画。</p><p>かなり滑らかです。<span style="font-size: 1em;">アプリのプロモーションに重宝しそうです。</span></p>

<p>
<iframe width="560" height="315" src="//www.youtube.com/embed/VlOZTmd41hM" frameborder="0" allowfullscreen=""></iframe>
</p>

<p>&nbsp;</p>
<p><b>使い方</b></p>
<p>
1. 録画してSDカードに保存する。
</p><pre class="prettyprint">adb shell screenrecord /sdcard/output.mp4</pre>
<p></p>
<p>2. Control + C で停止させる。</p>
<p>3. SDカードからファイルを取り出す
</p><pre class="prettyprint">adb pull /sdcard/output.mp4 .</pre>
<p></p>
<p>&nbsp;</p>
<p><b>screenrecord</b></p>
<ul>
<li><a href="http://developer.android.com/about/versions/kitkat.html#44-screen-recording">Android KitKat - Screen recording | Android Developers</a></li>
<li><a href="https://android.googlesource.com/platform/frameworks/av/+/android-4.4_r1/cmds/screenrecord/screenrecord.cpp">cmds/screenrecord/screenrecord.cpp - platform/frameworks/av - Git at Google</a>&nbsp;・・・ソースコード</li>
<li><a href="http://gigazine.net/news/20131105-nexus5-2nd-review/">「Nexus 5」でKitKatの新機能「screenrecord」を実際に試してみた - GIGAZINE</a>&nbsp;・・・初心者向け使い方</li>
</ul>]]>
        
    </content>
</entry>

</feed>