第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Blog-05-《一周快速上手Kotlin For Android》-之Broadcast用法

標(biāo)簽:
Android

---《一周快速上手Kotlin For Android》简介

目前Kotlin已正式成为Android的官方语言,作为Android开发者来说,学习和了解Kotlin也是属于理所当然的事情,兴许你觉得Java对于你来说才是真正的开发”利器”,使用Java你能发挥更高的效率,当然,如果如此你还是可以继续使用Java来开发Android。但对于Kotlin来说,开发Android会变得更简单一些,因为Kotlin其实就是Android开发中的语法糖,采用更简短的代码,描述更多的逻辑而已。开发语言本身就没有对错和最优,每个开发语言被开发出来的时代背景不同,需要解决的主要问题也不同。选择适合你自己的就可以。

BroadcastReceiver工作过程

Java 发送广播:

public class MainActivity extends AppCompatActivity {

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

        Button btn_send = findViewById(R.id.btn_send);
        btn_send.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setAction("ACTION_TEST");
                intent.putExtra("VALUE", 123);
                sendBroadcast(intent);
            }
        });
    }

}

Kotlin 发送广播:

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val btn_send = findViewById<Button>(R.id.btn_send)
        btn_send.setOnClickListener {
            val intent = Intent()
            intent.action = "ACTION_TEST"
            intent.putExtra("VALUE", 123)
            sendBroadcast(intent)
        }
    }

}

Java接收广播:

public class Main2Activity extends AppCompatActivity {

    private static final String TAG = "Main2Activity";

    private MyReceiver myReceiver;
    private IntentFilter intentFilter;

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

        Log.d(TAG, "onCreate");
        myReceiver = new MyReceiver();
        intentFilter = new IntentFilter();
        intentFilter.addAction("ACTION_TEST");

        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }


    @Override
    protected void onResume() {
        super.onResume();
        registerReceiver(myReceiver, intentFilter);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        unregisterReceiver(myReceiver);
    }

    private class MyReceiver extends BroadcastReceiver {

        @Override
        public void onReceive(Context context, Intent intent) {
            if(intent.getAction().equals("ACTION_TEST")){
                int value = intent.getIntExtra("VALUE", 0);
                Log.i(TAG, "onReceive value: " + value);
            }
        }

    }


}

Kotlin接收广播:

class Main2Activity : AppCompatActivity() {

    private var myReceiver: MyReceiver? = null
    private var intentFilter: IntentFilter? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main2)

        Log.d(TAG, "onCreate")
        myReceiver = MyReceiver()
        intentFilter = IntentFilter()
        intentFilter!!.addAction("ACTION_TEST”)

        val intent = Intent(this, MainActivity::class.java)
        startActivity(intent)
    }


    override fun onResume() {
        super.onResume()
        registerReceiver(myReceiver, intentFilter)
    }

    override fun onDestroy() {
        super.onDestroy()
        unregisterReceiver(myReceiver)
    }

    private inner class MyReceiver : BroadcastReceiver() {

        override fun onReceive(context: Context, intent: Intent) {
            if (intent.action == "ACTION_TEST") {
                val value = intent.getIntExtra("VALUE", 0)
                Log.i(TAG, "onReceive value: " + value)
            }
        }

    }

    companion object {

        private val TAG = "Main2Activity"
    }


}

原文链接:http://www.apkbus.com/blog-55128-78020.html

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶(hù)
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消