ででりんブログ

写真やプログラミングを中心とした雑記帳

スポンサーリンク

【Android】画面遷移とインテント

Androidアプリの画面遷移方法。


インテントの種類

  • 明示的なインテント(Explicit Intents)…実行するアクティビティクラスを指定する方法
  • 暗黙的なインテント(Implicit Intents)…Android OSに任せる方法


以下、サンプルです。
初期画面(FirstActivity)と遷移後の画面(SecondActivity)を用意し、初期画面にはボタン(button)を配置しています。
そして、ボタンを押すと画面遷移します。


基本的な手順は同じでExplicitかImplicitの違いは自分で用意した画面に遷移するか、指定した処理に対する画面(アプリ)をOSに選択させるかのようです。

Explicit Intents

package dederin.explicitintents;

import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class FirstActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
        setContentView(R.layout.activity_first);
        Button button = (Button)this.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v){
                // 明示的なインテント
                Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
                startActivity(intent);
            }
        });
    }
}

Implicit Intents

package dederin.implicitintents;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.net.Uri;

public class FirstActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
        Button button = (Button)this.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v){
                Uri uri = Uri.parse("http://www.google.co.jp");
                // 暗黙的なインテント
                // Android OSがURIを開くためのブラウザアプリを自動選択する
                Intent intent = new Intent(Intent.ACTION_VIEW, uri);
                startActivity(intent);
            }
        });
    }
}

【Android】Buttonイベント

ボタンをクリックした際のイベントで処理を行うサンプル。

画面にあるボタンを押すと…
f:id:dederin-photo:20160719225914j:plain,h500

テキストエリアに文章を表示します。
f:id:dederin-photo:20160719225917j:plain,h500

サンプルのソースコード
画面レイアウトにTextView(id:textview)とButton(id:button)を貼り付けて下さい。

package dederin.helloworld;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    private Button button;
    private TextView text;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        text = (TextView)this.findViewById(R.id.textview);
        button = (Button)this.findViewById(R.id.button);

        button.setOnClickListener(new View.OnClickListener(){
            public void onClick(View v){
                text.setText("Hello, Android World!");
            }
        });
    }
}

【Android】Android Studioのインストール

Android Studioのインストールとそれに伴う環境構築の覚書。

 

Android Studio 2.1.2のシステム要件は以下の通りです。(2016/7/16時点のWindows端末の要件)

  • Windows 7/8/10 (32bit または 64bit)
  • 最小メモリ 2GB, 必要メモリ 8GB
  • 最小空き容量 2GB, 必要空き容量 4GB
  • 画面解像度 1280x800以上
  • Java Development Kit (JDK) 8

 

【導入手順】

  1. JDKの入手
  2. JDKのインストール
  3. JDKのパスを環境変数に追加

    f:id:dederin-photo:20160716222159j:plain

  4. Android Studioのインストール
  5. Android Studioの起動(ここで追加ダウンロードがあります)
  6. SDKマネージャの実行

    f:id:dederin-photo:20160716224219j:plain

  7. 必要なSDKをインストール(既に使用したいバージョンがインストールされている場合は不要)

    f:id:dederin-photo:20160716225037j:plain

以上、ご参考まで。

福井県 竹田の油あげ 谷口屋

久しぶりに極厚油あげを食べたくなって谷口屋さんに行ってきました。

f:id:dederin-photo:20160711001946j:plain

f:id:dederin-photo:20160711001945j:plain

注文がタブレットになっていてハイテクになっていてびっくりしましたw

f:id:dederin-photo:20160711001937j:plain

相変わらずの分厚い油あげは絶品です!

かなりボリュームがあるので小食の方はご注意を。

f:id:dederin-photo:20160711001942j:plain

【動画エンコード】QSVの画質毎の設定

【動画エンコード】QSVをいろんな設定で試してみました - ででりんブログの続きです。

QSVの設定をQP I, P, B frameに絞って色々変えて試行してみました。

【元動画】

  • 15秒
  • 29fps
  • 1920x1080
  • 170MB
最高画質 高画質 中画質 低画質 最低画質1 最低画質2 最低画質3 最低画質4
QP I frame 18 20 22 24 26 28 30 32
QP P frame 20 22 24 26 28 30 32 34
QP B frame 22 24 26 28 30 32 34 36
変換後容量 33.2MB 23.5MB 16.7MB 12.6MB 9.5MB 7.25MB 5.82MB 4.62MB

先人たちの情報を元にしていますが、高画質や中画質といった基準は私見ですのでご参考までに。

Xperiaアップデート後の問題

前回「au Xperia Z5 SOV32 Android 6.0アップデート」の後に起こったXperiaアップデートによる不具合です。ピンポイントの情報がなかったので覚書。

 

【問題】

STAMINAモードを有効にすると「乗換案内Plus for au」が起動できなくなる

 

【原因】

STAMINAモードが原因でアプリ「au Market」の通信が阻害され、ライセンス認証が通らない

 

【対策】

「設定」→「バッテリー」→「電池の最適化」から「au Market」を最適化しないアプリに追加する

f:id:dederin-photo:20160619011432p:plain f:id:dederin-photo:20160619011436p:plain

スポンサーリンク