<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>side2.jp &#187; 開発TIPS</title>
	<atom:link href="http://side2.jp/category/development-info/tips/feed/" rel="self" type="application/rss+xml" />
	<link>http://side2.jp</link>
	<description>About Android</description>
	<lastBuildDate>Wed, 16 May 2012 12:04:06 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>[TIPS]Bluetooth SPPのUUID</title>
		<link>http://side2.jp/2012/04/tips-bluetooth-spp-uuid/</link>
		<comments>http://side2.jp/2012/04/tips-bluetooth-spp-uuid/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 12:26:19 +0000</pubDate>
		<dc:creator>Futaba</dc:creator>
				<category><![CDATA[開発TIPS]]></category>
		<category><![CDATA[Bluetooth]]></category>
		<category><![CDATA[UUID]]></category>

		<guid isPermaLink="false">http://side2.jp/?p=3986</guid>
		<description><![CDATA[Bluetoothの接続には、UUIDを指定しないといけないらしい。 その詳細は良く分かりませんが、BluetoothでSPPを使って接続する場合、UUIDは 00001101-0000-1000-8000-00805F [...]]]></description>
			<content:encoded><![CDATA[<p>Bluetoothの接続には、UUIDを指定しないといけないらしい。<br />
その詳細は良く分かりませんが、BluetoothでSPPを使って接続する場合、UUIDは</p>
<p><strong>00001101-0000-1000-8000-00805F9B34FB</strong></p>
<p>を指定しなければいけない。</p>
<p>Android公式のサンプル<a href="http://developer.android.com/resources/samples/BluetoothChat/index.html">BluetoothChat</a>を、SPPのデバイスと接続するアプリに流用する場合、このUUIDに変更するのを忘れてはいけない。　変更しておかなければデバイスの接続に失敗する。 プログラムは普通にビルドされるし例外も発生しないので、UUIDが原因の場合、原因が特定しづらいと思う。</p>
<p>&nbsp;</p>
<p>以前、僕の自作アプリ<a href="http://side2.jp/apps/bluetooth-terminal/">BluetoothTerminal</a>に外国の方から、「自作のアプリでは失敗するけど、BluetoothTerminalでは成功するのは何故か？」と言った感じの質問が有ったけれど、その時僕はこのUUIDの問題についてド忘れしていて「分からない」と言う感じの答えを返しておいた。<br />
最近になってこのことを思い出したのだけれど、その人のアプリが動かないのは、これが原因の可能性が大きいと思う。<br />
もうその人は見に来ないだろうけど・・・</p>
<p>ちなみに、検索すればこのことを解説しているサイトは山ほど見つかるのですが、上記のことがちょっと残念な気持ちなので、TIPSとしてブログに残しておくことにしました。</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://side2.jp/2012/04/tips-bluetooth-spp-uuid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[TIPS]String型とbyte配列の相互変換</title>
		<link>http://side2.jp/2012/02/tips-convert-string-byte/</link>
		<comments>http://side2.jp/2012/02/tips-convert-string-byte/#comments</comments>
		<pubDate>Sat, 25 Feb 2012 16:41:20 +0000</pubDate>
		<dc:creator>Futaba</dc:creator>
				<category><![CDATA[開発TIPS]]></category>

		<guid isPermaLink="false">http://side2.jp/?p=3917</guid>
		<description><![CDATA[普通のアプリ作成では、あまり使うことは無いかなと思いますが、外部と通信するアプリを作る場合に時々使うかと思います。 もちろん、これら以外の方法もあるかと思いますが、質問を受けたので僕が使っている方法を書いておきました。  [...]]]></description>
			<content:encoded><![CDATA[<p>普通のアプリ作成では、あまり使うことは無いかなと思いますが、外部と通信するアプリを作る場合に時々使うかと思います。</p>
<p>もちろん、これら以外の方法もあるかと思いますが、質問を受けたので僕が使っている方法を書いておきました。</p>
<p>&nbsp;</p>
<h3>String型 &rarr; byte配列</h3>
<p>文字列(String)をバイト配列(byte [])へ変換する場合は、<strong>getBytes</strong> を使います。<br />
char配列に変換するときは<strong>toCharArray</strong>ですが、byte型は<strong>getBytes</strong><br />
toとgetで統一感が無くて、少しややこしいですね。</p>
<p>例）</p>
<p class="syntax">[java]String str=&quot;ほげほげ&quot;;<br />
byte [] data = str.getBytes();[/java]</p>
<p>&nbsp;</p>
<p>文字エンコードを指定する場合</p>
<p>[java]String str=&quot;ほげほげ&quot;;</p>
<p>try<br />
{<br />
&nbsp;&nbsp;&nbsp; byte [] data = str.getBytes(&quot;SJIS&quot;);<br />
}<br />
catch (UnsupportedEncodingException e)<br />
{<br />
&nbsp;&nbsp;&nbsp; e.printStackTrace();<br />
}[/java]</p>
<p>&nbsp;</p>
<h3>byte配列 &rarr; String型</h3>
<p>バイト配列から文字列に変換する場合は、Stringのコンストラクタを使います。</p>
<p>例）</p>
<p class="syntax">[java]String str=&quot;ほげほげ&quot;;<br />
byte [] data = str.getBytes();</p>
<p>String str2 = new String(data);<br />
Log.d(&quot;test&quot;,&quot;str=&quot;+str2);[/java]</p>
<p>&nbsp;</p>
<p>文字エンコードを指定する場合</p>
<p class="syntax">[java]String str=&quot;ほげほげ&quot;;<br />
&nbsp;&nbsp; <br />
try<br />
{<br />
&nbsp;&nbsp;&nbsp; byte [] data = str.getBytes(&quot;SJIS&quot;);<br />
&nbsp;&nbsp;&nbsp; String str2 = new String(data,&quot;SJIS&quot;);<br />
&nbsp;&nbsp;&nbsp; Log.d(&quot;test&quot;,&quot;str2=&quot;+str2);<br />
}<br />
catch (UnsupportedEncodingException e)<br />
{<br />
&nbsp;&nbsp;&nbsp; e.printStackTrace();<br />
}[/java]</p>
<p>&nbsp;</p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://side2.jp/2012/02/tips-convert-string-byte/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android 3.2のズーム機能について</title>
		<link>http://side2.jp/2011/07/zoom-and-stretch/</link>
		<comments>http://side2.jp/2011/07/zoom-and-stretch/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 03:56:44 +0000</pubDate>
		<dc:creator>Futaba</dc:creator>
				<category><![CDATA[開発TIPS]]></category>

		<guid isPermaLink="false">http://side2.jp/?p=3507</guid>
		<description><![CDATA[Android 3.2 から、大画面(xlarge)に対応していないアプリの画面を拡大して表示する機能が搭載されたのですが、アプリの設定によっては、強制的にZoomモードになって、Stretch・Zoom が選べなくなる [...]]]></description>
			<content:encoded><![CDATA[<p>Android 3.2 から、大画面(xlarge)に対応していないアプリの画面を拡大して表示する機能が搭載されたのですが、アプリの設定によっては、強制的にZoomモードになって、Stretch・Zoom が選べなくなる事があるのに気付きました。</p>
<p>色々試してみた結果、強制Zoomになる条件は</p>
<p style="margin-left: 40px;">&lt;uses-sdk&gt;でminSdkVersionを指定していないか、3以下を指定している時に、<br />
&lt;supports-screens&gt;でlargeScreens=&quot;true&quot;を指定していない場合</p>
<p>つまり、なにも指定せずにプロジェクトを作っただけだと、強制的にZoomモードで表示されてしまうので、要注意です。（ま、そんなことはあまり無いのかもしれませんが）</p>
<p><a href="http://side2.jp/wordpress/wp-content/uploads/2011/07/device188.jpg"><img width="500" height="312" class="alignnone size-large wp-image-3510" title="強制拡大されて選択アイコンが無い状態" alt="強制拡大されて選択アイコンが無い状態" src="http://side2.jp/wordpress/wp-content/uploads/2011/07/device188-500x312.jpg" /></a><br />
この画面は、強制的にZoomで表示されてStretch・Zoomの選択画面を開く為のアイコンが無い状態。</p>
<p>&nbsp;</p>
<p><a href="http://side2.jp/wordpress/wp-content/uploads/2011/07/device189.jpg"><img width="500" height="312" class="alignnone size-large wp-image-3511" title="選択アイコンが出ている状態" alt="選択アイコンが出ている状態" src="http://side2.jp/wordpress/wp-content/uploads/2011/07/device189-500x312.jpg" /></a><br />
先とおなじプロジェクトの、AndroidManifestに</p>
<p style="margin-left: 40px;">&lt;uses-sdk android:minSdkVersion=&quot;4&quot; /&gt;</p>
<p>を記述すると、このように選択用のアイコンが現れる。</p>
<p>&nbsp;</p>
<p>ちなみに、選択用のアイコンは右下のこんなやつです。<br />
<a href="http://side2.jp/wordpress/wp-content/uploads/2011/07/zoom1.jpg"><img class="alignnone size-full wp-image-3486" title="zoom icon1" alt="zoom icon1" src="http://side2.jp/wordpress/wp-content/uploads/2011/07/zoom1.jpg" style="width: 250px; height: 126px;" /></a></p>
<p>&nbsp;</p>
<p>あと、Android 3.0 からは、&lt;supports-screens&gt;に xlargeScreens が指定できるようになっているので、これをtrue指定すると、強制的にStretchモードで表示されるようになる。（Android 3.1までと同じ状態）</p>
<p><a href="http://side2.jp/wordpress/wp-content/uploads/2011/07/device190.jpg"><img width="500" height="312" class="alignnone size-large wp-image-3512" title="device190" alt="device190" src="http://side2.jp/wordpress/wp-content/uploads/2011/07/device190-500x312.jpg" /></a>&nbsp;<br />
先とおなじプロジェクトの、AndroidManifestに</p>
<p style="margin-left: 40px;">&lt;supports-screens android:xlargeScreens=&quot;true&quot; /&gt;</p>
<p>を記述すると、 Stretch・Zoomの選択アイコンが消えて、Stretchモードで表示される。</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://side2.jp/2011/07/zoom-and-stretch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[TIPS]文字にドロップシャドウを付ける方法</title>
		<link>http://side2.jp/2011/04/textview-dropshadow/</link>
		<comments>http://side2.jp/2011/04/textview-dropshadow/#comments</comments>
		<pubDate>Fri, 08 Apr 2011 16:39:47 +0000</pubDate>
		<dc:creator>Futaba</dc:creator>
				<category><![CDATA[開発TIPS]]></category>
		<category><![CDATA[TextView]]></category>

		<guid isPermaLink="false">http://side2.256byte.com/?p=2611</guid>
		<description><![CDATA[実は TextView には影を付ける為のパラメーターが有るので、簡単にドロップシャドウが付けられます。 レイアウトでは android:shadowColor 影の色 android:shadowDx 元の文字からの移 [...]]]></description>
			<content:encoded><![CDATA[<p>実は TextView には影を付ける為のパラメーターが有るので、簡単にドロップシャドウが付けられます。</p>
<p>レイアウトでは</p>
<table width="450" cellspacing="1" cellpadding="1" border="1">
<tbody>
<tr>
<td>android:shadowColor</td>
<td>影の色</td>
</tr>
<tr>
<td>android:shadowDx</td>
<td rowspan="2">元の文字からの移動距離</td>
</tr>
<tr>
<td>android:shadowDy</td>
</tr>
<tr>
<td>android:shadowRadius</td>
<td>ぼやけ具合</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>プログラムからは</p>
<p>TextView#setShadowLayer(float radius, float dx, float dy, int color)</p>
<p>で、ドロップシャドウを指定できます。</p>
<p><span id="more-2611"></span>&nbsp;</p>
<p>例えば、元の表示がこれだとして</p>
<p><img width="200" height="100" border="1" class="size-full wp-image-2623" title="shadow1" alt="shadow1" src="http://side2.256byte.com/wordpress/wp-content/uploads/2011/04/shadow1.jpg" /></p>
<p class="syntax">[xml]&lt;TextView<br />
&nbsp;&nbsp;&nbsp; android:layout_width=&quot;fill_parent&quot;<br />
&nbsp;&nbsp;&nbsp; android:layout_height=&quot;wrap_content&quot;<br />
&nbsp;&nbsp;&nbsp; android:text=&quot;@string/hello&quot;<br />
&nbsp;&nbsp;&nbsp; android:textColor=&quot;#000&quot;<br />
&nbsp;&nbsp;&nbsp; android:textSize=&quot;20sp&quot;<br />
&nbsp;&nbsp;&nbsp; /&gt;<br />
[/xml]</p>
<p>&nbsp;</p>
<p>グレーの影を付けるとこんな感じ</p>
<p><img width="200" height="100" border="1" class="size-full wp-image-2646" title="shadow2" alt="shadow2" src="http://side2.256byte.com/wordpress/wp-content/uploads/2011/04/shadow2.jpg" /></p>
<p>[xml]&lt;TextView<br />
&nbsp;&nbsp;&nbsp; android:layout_width=&quot;fill_parent&quot;<br />
&nbsp;&nbsp;&nbsp; android:layout_height=&quot;wrap_content&quot;<br />
&nbsp;&nbsp;&nbsp; android:text=&quot;@string/hello&quot;<br />
&nbsp;&nbsp;&nbsp; android:textColor=&quot;#000&quot;<br />
&nbsp;&nbsp;&nbsp; android:textSize=&quot;20sp&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowColor=&quot;#888&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowDx=&quot;1.5&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowDy=&quot;1.5&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowRadius=&quot;1.5&quot;<br />
&nbsp;&nbsp;&nbsp; /&gt;<br />
[/xml]</p>
<p>&nbsp;</p>
<p>分かりやすいように、色を赤にして距離を離してみると</p>
<p><img width="200" height="100" border="1" class="size-full wp-image-2632" title="shadow3" alt="shadow3" src="http://side2.256byte.com/wordpress/wp-content/uploads/2011/04/shadow3.jpg" /></p>
<p>[xml]&lt;TextView<br />
&nbsp;&nbsp;&nbsp; android:layout_width=&quot;fill_parent&quot;<br />
&nbsp;&nbsp;&nbsp; android:layout_height=&quot;wrap_content&quot;<br />
&nbsp;&nbsp;&nbsp; android:text=&quot;@string/hello&quot;<br />
&nbsp;&nbsp;&nbsp; android:textColor=&quot;#000&quot;<br />
&nbsp;&nbsp;&nbsp; android:textSize=&quot;20sp&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowColor=&quot;#F00&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowDx=&quot;5.0&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowDy=&quot;5.0&quot;<br />
&nbsp;&nbsp;&nbsp; android:shadowRadius=&quot;1.5&quot;<br />
&nbsp;&nbsp;&nbsp; /&gt;<br />
[/xml]</p>
<p>&nbsp;</p>
<p>あと、ボタンなんかの文字にも有効なようです。</p>
<p><img width="200" height="100" border="1" class="size-full wp-image-2638" title="shadow4" alt="shadow4" src="http://side2.256byte.com/wordpress/wp-content/uploads/2011/04/shadow4.jpg" /></p>
<p>&nbsp;</p>
<p><a href="http://side2.256byte.com/wordpress/wp-content/uploads/2011/04/device141.png"><img width="200" height="300" border="1" src="http://side2.256byte.com/wordpress/wp-content/uploads/2011/04/device141-200x300.png" alt="ドロップシャドウ" title="ドロップシャドウ" class="size-medium wp-image-2651" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://side2.jp/2011/04/textview-dropshadow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>[TIPS]ImageViewで9patchを表示する方法</title>
		<link>http://side2.jp/2010/11/imageview-scaletype/</link>
		<comments>http://side2.jp/2010/11/imageview-scaletype/#comments</comments>
		<pubDate>Sun, 14 Nov 2010 07:26:26 +0000</pubDate>
		<dc:creator>Futaba</dc:creator>
				<category><![CDATA[開発TIPS]]></category>
		<category><![CDATA[9patch]]></category>
		<category><![CDATA[ImageView]]></category>

		<guid isPermaLink="false">http://side2.256byte.com/?p=2398</guid>
		<description><![CDATA[ImageView に 9patchのPNG画像のリソースを指定する場合、backgroundに指定すれば正しく伸びてくれるのですが、srcに指定してもうまく伸びてくれません。 ImageView なので backgro [...]]]></description>
			<content:encoded><![CDATA[<p><strong>ImageView</strong> に <strong>9patch</strong>のPNG画像のリソースを指定する場合、<strong>background</strong>に指定すれば正しく伸びてくれるのですが、<strong>src</strong>に指定してもうまく伸びてくれません。</p>
<p>ImageView なので background で代用しても問題無さそうなのですが、ウィジェット(appWidget)で使う場合は backgroundを簡単に変更出来ないので困りました。</p>
<p>&nbsp;<span id="more-2398"></span></p>
<h3>解決方法</h3>
<p>問題は画像のリサイズ指定にありました。</p>
<p>解決方法は簡単で、</p>
<p style="margin-left: 40px;"><span style="font-size: larger;"><strong>scaleType</strong> に <strong>fitXY</strong> を指定</span></p>
<p>するだけです。</p>
<p>scaleType は画像のリサイズや配置の指定で、デフォルトでは fitCenter が指定されてるっぽいです。</p>
<p>XMLの場合</p>
<p class="syntax">[xml]&lt;ImageView<br />
&nbsp;&nbsp;&nbsp; &#8230;<br />
&nbsp;&nbsp;&nbsp; android:scaleType=&quot;fitXY&quot;<br />
/&gt;[/xml]</p>
<p>&nbsp;</p>
<p>コード内で変更する場合</p>
<p class="syntax">[java]ImageView iv;<br />
iv= (ImageView) findViewById(R.id.hoge);<br />
iv.setScaleType(ImageView.ScaleType.FIT_XY);[/java]</p>
<p>&nbsp;</p>
<p>scaleTypeには他にも様々な指定が可能です。</p>
<p>参考&rarr; <a href="http://wikiwiki.jp/android/?UI%A5%B3%A5%F3%A5%DD%A1%BC%A5%CD%A5%F3%A5%C8%2FImageView#scaleType">http://wikiwiki.jp/android/?UI%A5%B3%A5%F3%A5%DD%A1%BC%A5%CD%A5%F3%A5%C8%2FImageView#scaleType</a></p>
<p>&nbsp;</p>
<p>で、こんな感じでうまく出来ました。</p>
<table width="450" cellspacing="1" cellpadding="1" border="0" class="noborder">
<tbody>
<tr>
<td><a href="http://side2.256byte.com/wordpress/wp-content/uploads/2010/11/widget_sample1.png"><img width="180" height="300" class="size-medium wp-image-2413" title="widget_sample1" alt="widget_sample1" src="http://side2.256byte.com/wordpress/wp-content/uploads/2010/11/widget_sample1-180x300.png" /></a></td>
<td><a href="http://side2.256byte.com/wordpress/wp-content/uploads/2010/11/widget_sample2.png"><img width="180" height="300" class="size-medium wp-image-2414" title="widget_sample2" alt="widget_sample2" src="http://side2.256byte.com/wordpress/wp-content/uploads/2010/11/widget_sample2-180x300.png" /></a></td>
</tr>
<tr>
<td>&nbsp;何も指定せずに、正しく伸びなかった</td>
<td>&nbsp;fitXYを指定して、正しく伸びた</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>最初、この方法を知らずに、NinePatchDrawable を使って自前で伸ばしたりして、無駄な時間を費やしました・・・orz</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://side2.jp/2010/11/imageview-scaletype/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

