英語で登録
ゆうちょ銀行の「海外の銀行からの送金」をみて、
英語表記の例を見ながら入力する。
2013年6月3日月曜日
2013年3月21日木曜日
別クラスからViewの変更
package com.example.temp;
import android.app.Activity;
import android.os.Bundle;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new vewChange(this);
}
}
package com.example.temp;
import android.content.Context;
import android.widget.TextView;
public class vewChange {
public vewChange(Context context) {
// TODO Auto-generated constructor stub
TextView tv = (TextView) ((com.example.temp.MainActivity) context).findViewById(R.id.textView1);
tv.setText("change");
}
}
別パターン
package com.example.temp;
import android.widget.TextView;
public class vewChange {
public vewChange(MainActivity mainActivity) {
// TODO Auto-generated constructor stub
TextView tv = (TextView) mainActivity.findViewById(R.id.textView1);
tv.setText("change");
}
}
2013年3月19日火曜日
日にち計算
Calendar calendar1 = Calendar.getInstance();
calendar1.set(2013, 4, 1);//日時1を2013/04/01 に設定
Calendar calendar2 = Calendar.getInstance();
calendar2.set(2013, 4, 10);
// 2つの日付の差を求める(ミリ秒)
long difference = calendar2.getTime().getTime() - calendar1.getTime().getTime();
// ミリ秒を変換して表示
System.out.println("日付の差は" + difference / 1000 / 60 / 60 / 24 + "日です。");
2013年3月15日金曜日
EditTextの入力制限
InputFilter で正規表現を使って入力制限のサンプル
EditText の取得とInputFilter の設定
InputFilter
入力可能な値は
三桁までの数値で小数点以下一桁
考察:最後が.で終わってしまった時の処理
フォーカスが去った時に.を削除するか0を追加する。
【参考】正規表現
便利なサイト:http://regexpal.com/
EditText の取得とInputFilter の設定
EditText ed = (EditText)findViewById(R.id.editWeight);
InputFilter[] filters = { new MyFilter() };
ed.setFilters(filters);
InputFilter
public class MyFilter implements InputFilter {
@Override
public CharSequence filter(CharSequence source, int start, int end,
Spanned dest, int dstart, int dend) {
//入力文字を繋げる
String destStr = dest.toString();
String newValue = destStr.substring(0, dstart) + source + destStr.substring(dend);
Log.v("ログ", "destStr::" + dest.toString());
Log.v("ログ", "newValue::" + newValue);
if (newValue.matches("^\\d{1,3}(\\.\\d|\\.)?$")) {
//正規表現にマッチしている時に入力可
return source;
} else {
return "";
}
}
}
入力可能な値は
三桁までの数値で小数点以下一桁
考察:最後が.で終わってしまった時の処理
フォーカスが去った時に.を削除するか0を追加する。
【参考】正規表現
便利なサイト:http://regexpal.com/
2013年3月13日水曜日
custom view をScrollView に表示
うまくいかない。
修正前のソースコード
修正後のソースコード
onMeasureメソッドを追加した
なぜか、XMLレイアウト画面でドラッグして追加できなくなった。
修正前のソースコード
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
public class testView extends View {
public testView(Context context, AttributeSet attrs) {
super(context);
setFocusable(true);
Log.v("testVire", "testVire(Context context");
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 通常はグラフィックを描画するコードをここに記述する。
canvas.drawColor(Color.BLUE);
Paint paint = new Paint();
Bitmap bitmap = Bitmap.createBitmap(200, 500, Bitmap.Config.ARGB_8888);
Canvas bitmapCanvas = new Canvas(bitmap);
paint.setColor(Color.RED);
bitmapCanvas.drawColor(Color.BLACK);
bitmapCanvas.drawCircle(50, 50, 40, paint);
canvas.drawBitmap(bitmap, 10, 10, null);
Log.v("testVire", "onDraw");
}
}
修正後のソースコード
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
public class testView extends View {
public testView(Context context, AttributeSet attrs) {
super(context);
setFocusable(true);
Log.v("testVire", "testVire(Context context");
}
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
setMeasuredDimension(200, 500);
Log.v("testVire", "onMeasure" + widthMeasureSpec);
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 通常はグラフィックを描画するコードをここに記述する。
canvas.drawColor(Color.BLUE);
Paint paint = new Paint();
Bitmap bitmap = Bitmap.createBitmap(200, 500, Bitmap.Config.ARGB_8888);
Canvas bitmapCanvas = new Canvas(bitmap);
paint.setColor(Color.RED);
bitmapCanvas.drawColor(Color.BLACK);
bitmapCanvas.drawCircle(50, 50, 40, paint);
canvas.drawBitmap(bitmap, 10, 10, null);
Log.v("testVire", "onDraw");
}
}
onMeasureメソッドを追加した
なぜか、XMLレイアウト画面でドラッグして追加できなくなった。
登録:
投稿 (Atom)



