Android开发入门例程之动态改变背景色

直接上源码

package com.example.myapp;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.LinearLayout;
import android.graphics.drawable.ColorDrawable;

public class MyActivity extends Activity {
    /**
     * Called when the activity is first created.
     */
    public static ColorDrawable yellowdrawable = new ColorDrawable(0xffffff00);
    public static ColorDrawable whitedrawable = new ColorDrawable(0xffffffff);
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        this.getWindow().setBackgroundDrawable(whitedrawable);
    }

    public boolean onTouchEvent(MotionEvent event) {
        LinearLayout l1;
        switch (event.getAction()){
            case MotionEvent.ACTION_DOWN:
                this.getWindow().setBackgroundDrawable(yellowdrawable);
                break;
            case MotionEvent.ACTION_UP:
                this.getWindow().setBackgroundDrawable(whitedrawable);
                break;
        }
        return super.onTouchEvent(event);
    }
}

其实关键代码只有this.getWindow().setBackgroundDrawable(一句,如果只想改变背景色的话不用扯什么selector。 
这样的效果是触摸屏幕时背景色为黄,抬起手指恢复为白。

--------------------------一条分割线------------------------------

再附上将界面设为白底黑字的方法:

在main.xml的TextView和AndroidManifest.xml的activity标签里加入

android:theme="@android:style/Theme.Light"

--------------------------一条分割线------------------------------

最后说一下,笔者的开发环境是intellij13,不是eclipse。不过程序应该没有太大区别,最多是package和import部分不一样。

intellij是个不错的java开发环境,代码分析上比eclipse要智能。缺点是占内存。


EOB




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Android 蓝牙开发例程是为了在 Android 设备上实现蓝牙功能而提供的一套代码范例。它包含了一系列的步骤和方法,帮助开发者理解和实现蓝牙通信。 首先,在开发蓝牙应用程序之前,需要在 AndroidManifest.xml 文件中添加蓝牙权限,以确保应用程序具有与蓝牙设备进行通信的权限。 然后,需要在应用程序中初始化 BluetoothAdapter 对象。通过该对象,可以获取设备上的蓝牙适配器,以便进行蓝牙相关操作。 接下来,可以通过调用 BluetoothAdapter 的方法来进行蓝牙设备的扫描、配对和连接。比如,使用 startDiscovery() 方法来开始扫描附近的蓝牙设备,使用 createBond() 方法来配对蓝牙设备,使用 connectGatt() 方法来连接蓝牙设备等等。 在蓝牙设备连接成功后,可以使用 BluetoothSocket 对象来进行数据的传输。通过该对象,可以实现数据的读取和写入。读取数据可以使用 InputStream 的 read() 方法,写入数据可以使用 OutputStream 的 write() 方法。 此外,还可以注册广播接收器来接收蓝牙相关的系统事件。例如,可以注册 ACTION_FOUND 广播用于接收到新的蓝牙设备的通知,或者注册 ACTION_STATE_CHANGED 广播用于接收蓝牙状态变化的通知。 总而言之,Android 蓝牙开发例程提供了一套完整的代码指南,帮助开发者在 Android 设备上实现蓝牙功能。通过了解和使用这个例程开发者可以更轻松地开发出与蓝牙设备进行交互的应用程序。 ### 回答2: Android蓝牙开发例程是用于在Android平台上实现蓝牙通信功能的示例代码。开发者可以根据这个例程,快速地了解和掌握Android蓝牙开发的基本原理和操作步骤。 蓝牙开发的主要步骤包括:扫描蓝牙设备、建立蓝牙连接、发送和接收数据等。在Android蓝牙开发例程中,通常会包含以下功能的示例代码: 1. 初始化蓝牙适配器:获取系统中唯一的蓝牙适配器实例,并判断设备是否支持蓝牙功能。 2. 扫描蓝牙设备:开启蓝牙扫描功能,搜索周围的蓝牙设备,并展示设备名称和地址等相关信息。 3. 建立蓝牙连接:通过设备的地址,与指定的蓝牙设备建立连接。连接成功后可以进行数据的发送和接收。 4. 发送和接收数据:通过蓝牙连接发送数据到远程设备,同可以实地接收远程设备发送的数据。 5. 断开蓝牙连接:在通信完成后,主动关闭蓝牙连接,释放资源。 在实际的开发中,开发者可以根据具体的需求和场景,对例程中的代码进行扩展和优化。例如可以添加蓝牙配对验证、设置通信模式、设备搜索过滤等功能。 总之,Android蓝牙开发例程提供了一个入门级的示例,对于初学者来说是非常有帮助的。通过学习和理解这些示例代码,开发者可以更快地实现自己的蓝牙应用,并大大提高开发效率。 ### 回答3: Android蓝牙开发例程一般包括以下几个步骤: 1. 获取蓝牙适配器:通过调用系统的BluetoothAdapter类的getDefaultAdapter()方法获取蓝牙适配器实例。 2. 检查蓝牙功能是否支持:使用isEnabled()方法判断蓝牙功能是否开启。若未开启,可以使用enable()方法进行启用。 3. 搜索蓝牙设备:使用startDiscovery()方法启动设备搜索,通过继承BroadcastReceiver类并实现其onReceive()方法来接收设备搜索结果。可以在onReceive()方法中获取搜索到的设备信息。 4. 配对蓝牙设备:可以通过调用BluetoothDevice类的createBond()方法来进行蓝牙设备的配对。 5. 连接蓝牙设备:使用BluetoothSocket类来创建一个与目标蓝牙设备的连接,并通过该连接来发送和接收数据。 6. 监听蓝牙连接状态:使用BluetoothAdapter类的listenUsingRfcommWithServiceRecord()方法来监听蓝牙连接状态,可以通过继承BluetoothServerSocket类并实现其accept()方法来监听连接请求。 7. 与蓝牙设备进行数据交互:通过BluetoothSocket类的getOutputStream()获取输出流,通过其write()方法向设备发送数据;通过getInputStream()获取输入流,通过其read()方法读取设备发送的数据。 8. 关闭蓝牙连接:使用BluetoothSocket的close()方法关闭蓝牙连接。 需要注意的是,蓝牙开发涉及到多线程操作,为了避免阻塞UI线程,建议将蓝牙相关操作放在异步线程中进行。此外,还需在AndroidManifest.xml文件中添加相应的权限和相关声明,如ACCESS_COARSE_LOCATION、BLUETOOTH、BLUETOOTH_ADMIN等。 以上是Android蓝牙开发的一般流程和步骤,具体开发过程需要根据具体需求进行调整和实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值