しがないエンジニアのブログ

技術的な内容をメモ代わりにつらつら

はてなブログのサイドバーを横に表示する

追記 2018/08/16】
次の記事で書いた方法がいいと思います。
この記事で書いた方法だと、ブログtopページでは正常に表示されましたが、

各記事のページに行くとレイアウトが崩れてしまっていました。

プレビューがおかしくなるのも同じ原因でした。
下の参考サイトで書いあったように、1次元レイアウトならflexの方がいいような気がするのですが仕方ないんですかねー


#content-inner {
  display: flex;
}

デザインcssにこれを追加するだけ!

でも記事のプレビューしたときに記事とサイドバーの横幅が1:1になってるのが気になる…


参考サイト

gmailで特定のメールのurlを取得する

このメール見て!ってことをやりたかったので

1 . 対象のメールを開く
2 . ポップアップする

f:id:turgure:20180815095946p:plain

3 . URLのth=xxxのth以下のidをコピー

f:id:turgure:20180815105852p:plain

4 . URLをhttps://mail.google.com/mail/u/0/#inbox/xxx (xxxはコピーしたid)にする

このリンクを貼り付ければ対象のメールを開くことができる

参考サイト

androidのpermission

android 6.0から、インストール時にまとめてpermissionを許可する方式から、最初は何も許可せずに使うタイミングで許可を求めさせる方式に変わった。
それについてのpermissionの求め方についてのメモ

private final int REQUEST_CODE_WRITE_EXTERNAL_STORAGE = 1;

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    if(ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(
                this,
                new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
                REQUEST_CODE_WRITE_EXTERNAL_STORAGE);
        return;
    }
}

許可の設定で、今後は表示しないなどとした場合は、shouldShowRequestPermissionRationale(Activity activity, String permission)を使う。
むしろ積極的に使うべし

private final int REQUEST_CODE_WRITE_EXTERNAL_STORAGE = 1;

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    if(ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
        if(ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
            Toast.makeText(this, "パーミッションがOFFになっています。", Toast.LENGTH_SHORT).show();
        }
        else {
            ActivityCompat.requestPermissions(
                    this,
                    new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
                    REQUEST_CODE_WRITE_EXTERNAL_STORAGE);
        }
        return;
    }
}

追記 20180927
shouldShowRequestPermissionRationale()は、permissionを使う理由を説明するときに使うメソッドらしい。
なので、「パーミッションがOFFです」ではなく、「xxxの目的でパーミッションが必要です。」の説明の方が適切かも
Marshmallow でやってきたパーミッション要求まわりを1つのフラグメントにまとめてみた


requirePermissions()が走ると、通知許可をしたかどうかで処理が分かれる。
そして、その結果をonRequestPermissionResult()で受け取る

@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults){
    switch(requestCode) {
        case REQUEST_CODE_WRITE_EXTERNAL_STORAGE:
            if(grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                // 許可したときの処理
            }
            else {
                // 許可しなかったときの処理
            }
            break;

     default:
            super.onRequestPermissionsResult(requestCode, permissions, grantResults);
            break;
    }
}


参考サイト