大陆版本
长春旧版
长春新版
长春彩色映画版(初版2003.7.1)
长春彩色版第二辑(第一集:柯南vs怪盗基德+死神阵内,对应单行本16集)
内蒙古彩色版(跟长春彩色版一样)
package com.cnd.zhongkong.qiyeban;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
/**
* button监听器用法,参考:https://blog.csdn.net/kyi_zhu123/article/details/52601691
*/
public class ActivityTest extends AppCompatActivity implements View.OnClickListener {
private static final String TAG="ActivityTest";
private Button btn1,btn2,btn3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
btn1=(Button)findViewById(R.id.btnShow1);
btn2=(Button)findViewById(R.id.btnShow2);
btn3=(Button)findViewById(R.id.btnShow3);
/*********
* 方法一,匿名内部类监听优点有:
* 1.可以在当前类中复用该监听器类
* 2.可以自由访问外部类的所有界面组件
* 确定:如有多个控件一个个写很麻烦
* *****/
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.i(TAG,"function1 click "+((Button)view).getText());
}
});
/*方法2:外部类实现监听
* 优点为:
1.当某个事件监听器被多个GUI界面共享,且主要是完成某种业务逻辑的实现
其中缺点为:
1.不利于提高程序的内聚性
2.不能自由访问创建GUI界面类的组件,编程不够简洁
* */
btn2.setOnClickListener(new OnClickListenerClass());
/*****
* 方法3:接口方式实现监听其中优点为:非常简洁
* 缺点为:
* 1.这种形式可能造成程序结构混乱。Activity的主要职责应该是完成界面初始化;但此时还需包含事件处理器方法,从而引起混乱
* 2.如果activity界面类需要实现监听器接口,让人感觉比较怪异
* ***/
btn3.setOnClickListener(this);
}//end onclick
@Override
public void onClick(View view) {
Log.i(TAG,"function3 click: "+((Button)view).getText());
}
public void clickHandle(View view){ /*方法4:直接绑定到标签,优点:某个控件的点击方法要实现的逻辑较复杂的时候使用,缺点:要在xml中写Android:onClick="clickHandler"*/
Log.i(TAG,"function4 click: "+((Button)view).getText());
}
class OnClickListenerClass implements View.OnClickListener{
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.btnShow2:Log.i(TAG,"function2 click "+((Button)view).getText());break;
}
}
}
}
MainActivity<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.example.a0113_log"> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" tools:ignore="ProtectedPermissions" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity3"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
/** * 参考:http://www.voidcn.com/article/p-eeswpcan-bpm.html * 删除超过五天的文件 * @param path */ private void del5Days(String path) { long fiveDayTime=5L*24L*60L*60L*1000L; //注意不写L可能导致结果为负数 long currentTime=System.currentTimeMillis(); File dirFile = new File(path); if (dirFile.exists()) { File[] files = dirFile.listFiles(); if (files != null) { for (File fileChildDir : files) { //输出文件名或者文件夹名// System.out.print(""+fileChildDir.getName()); if (fileChildDir.isDirectory()) { long lastTime=fileChildDir.lastModified(); long diffenTime=currentTime-lastTime; if(diffenTime>fiveDayTime) //大于五天 { Log.i(TAG,"del=====>"+path+fileChildDir.getName()); try { String tmpPath=path+fileChildDir.getName()+"/"; delFiles(tmpPath); fileChildDir.delete(); Log.i(TAG,"delete success!"); } catch (Exception e) { e.printStackTrace(); Log.i(TAG,"delete error"+e.toString()); } } } if (fileChildDir.isFile()) { // System.out.println(fileChildDir.getName()+" : 此为文件名"); } } } }else{ System.out.println("你想查找的文件不存在"); return ; } }
.png)
.png)