TextViewでリンクを貼る

String setumei =
"<a href=\"http://macchisoft.dip.jp\">ここ</a>をクリック";
TextView textViewKaisetu =
              (TextView) findViewById(R.id.text_kaisetu);

        MovementMethod mm = LinkMovementMethod.getInstance();
	textViewKaisetu.setMovementMethod(mm);
	CharSequence cs = Html.fromHtml(setumei);
	textViewKaisetu.setText(cs);

これで「ここ」にリンクが貼れる。<br>も有効になり改行される。

URIで送ったデータを受け取る

loanchplanttab://macchisoft.com/plant?name=sakura

というURIから起動されたActivityでsakuraという文字列を取得するには

Uri uri=getIntent().getData();
        if(uri != null){
        	plantname = uri.getQueryParameter("name");
        }

URIでActivityを起動

まずはマニュフェストで設定。起動させたいActivityの中にintent filterを入れる。

<intent-filter> 
  <action android:name="android.intent.action.VIEW" />
 <category android:name="android.intent.category.DEFAULT" /> 
  <category android:name="android.intent.category.BROWSABLE"/> 
  <data android:scheme="loanchplanttab"
           android:host="macchisoft.com"  
           android:pathPrefix="/plant" />
</intent-filter>

上の例だと起動のためのURIは

loanchplanttab://macchisoft.com/plant

となる。

queryを使って複数条件でデータを取り出す

色が赤で草丈が低と言う条件でsqliteのplanttableからデータを取り出したいときはこんなかんじ。

String where = "iro LIKE ? AND kusatake LIKE ?";
Cursor cursor = db.query("planttable",
 new String[] { "name", "icon" }, where, new String[] { "赤", "低" },
null, null, null);

?の所に赤と低がそれぞれ入る。
ちなみに赤や低の代わりに%を入れると全てヒットする。

文字の設定

TextViewの文字サイズ、色、背景色、配置を設定するには以下のようにする。

TextView plantName = new TextView(this);
plantName.setTextSize(20);
plantName.setTextColor(Color.WHITE);
plantName.setBackgroundColor(Color.BLACK);
plantName.setGravity(Gravity.CENTER_VERTICAL);

リソースの画像を90度回転してimageviewに表示する

以下の様に、リソースの画像からbitmapを生成した後、matrixで回転させsetImageBitmap()でimageviewに登録する。

Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(),R.drawable.inutade);

        int width = bitmap1.getWidth();
        int height = bitmap1.getHeight();

        Matrix matrix = new Matrix();
        matrix.postRotate(90.0f);  // 回転させる角度を指定

        bitmap1 = Bitmap.createBitmap(bitmap1, 0, 0, width, height, matrix, true);
        ImageView imageview = (ImageView)findViewById(R.id.plant_picture1);
        imageview.setImageBitmap(bitmap1);