3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

ドライブ丸ごとrobocopyする際の注意

バックアップ対象ドライブのパス指定

robocopyでドライブまるごとバックアップしようとしたんですが、エラーに。。。 原因はパスの表記でした。最初末尾に \ を入れてたんですが、これだとNGのようです。 バックアップ対象パスを以下のように \ なしに修正したら動きました。

D:\ →誤
D:  →正

[System Volume Information]と[$RECYCLE.BIN]の除外

ドライブ丸ごとコピーとなると、System Volume Information と $RECYCLE.BIN は除外しないといけません。 /XD オプションで除外フォルダを指定できますが、$RECYCLE.BIN の場合、エスケープ(`)が必要です。

 /XD "System Volume Information" "`$RECYCLE.BIN"

フォルダのタイムスタンプ

robocopyで配下にファイルがあるフォルダをコピーすると、バックアップ先のフォルダのタイムスタンプがバックアップ元と異なる物になるケースがあります。 詳細は Robocopyコマンド: /DCOPY:DATのすすめ を見ていただくと原理がわかかります。 フォルダのタイムスタンプをコピーするためには、 /DCOPY:DAT をつけるといいようです。

上記まとめると、こんな感じのコマンドになりますかね。

robocopy "D:" "E:\dst" /MIR /DCOPY:DAT /R:2 /W:5   /XD "System Volume Information" "`$RECYCLE.BIN"

(Android開発)ソフトキーボードを表示すると、EditTextが隠れる場合の対処

問題現象

EditTextがレイアウトの下のほうにある場合、文字入力をしようとするとソフトキーボードでEditBoxが隠れてしまう現象が発生しました。 ソフトキーボードでEditTextが隠れると入力された文字が確認できないため、ユーザビリティに問題が発生します。

対策

マニュフェストファイルで、windowSoftInputMode 属性を設定することで、ソフトキーボードの表示の設定ができるようです。 (※アクティビティのレイアウトファイルでなく、マニュフェストファイル = AndroidManifest.xml に設定します。)

設定できる内容は、以下公式サイトで確認できます。 https://developer.android.com/guide/topics/manifest/activity-element?hl=ja#wsoft

いろいろ設定値がありますが、今回は、"adjustPan" を設定しました。 "adjustPan"はレイアウトのサイズを変更せず、他の要素を自動的にパン(画面外に隠す)します。隠れたコンテンツを表示するには、ソフトキーボードを閉じる必要があります。

AndroidManifest.xml
        <activity
            android:name=".view.xxxxActivity"
            android:screenOrientation="landscape" ←画面横向き強制
            android:windowSoftInputMode="adjustPan"  ←これ
            android:exported="false" />

参考: EditTextに入力中の文字がソフトキーボードで隠れるのを防ぎたい | by Keisuke Kawajiri | URL Memo | Medium