connectbot改造1-增加连接按钮,去除首次运行license显示
程序运行的主窗口为HostListActivity,打开\src\main\java\org\connectbot\HostListActivity.java
1、去除首次运行license显示
在onCreate函数中,有如下语句,用来检查是否已经同意软件声明:
// check for eula agreement
boolean agreed = prefs.getBoolean(PreferenceConstants.EULA, false);
if(!agreed) {
this.startActivityForResult(new Intent(this, WizardActivity.class), REQUEST_EULA);
}
如果没有同意过,则调用WizardActivity显示声明页面,我们可以改成直接同意声明(加粗部分为修改部分,下同):
boolean agreed = prefs.getBoolean(PreferenceConstants.EULA, false);
if(!agreed) {
//this.startActivityForResult(new Intent(this, WizardActivity.class), REQUEST_EULA);
// yay we agreed, so store that info
Editor edit = prefs.edit();
edit.putBoolean(PreferenceConstants.EULA, true);
edit.commit();
}
这样在第一次启动时,不会再出现声明界面
2、增加连接按钮
connectbot输入主机连接是直接检查enter按键,没有专门的“连接”按钮,第一次使用者不太习惯,我们来增加一个“连接”按钮。
首先在strings.xml中增加按钮名称,其他语言显示也按下述方式增加:
<string name="ywb_connect">"Connect"</string>
打开\src\main\res\layout\act_hostlist.xml,增加一个button
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/ywb_connect"
android:id="@+id/button"
android:layout_alignParentRight="true"
android:layout_alignBaseline="@+id/transport_selection" />
front_quickconnect的 right :left指定为button,表示控件在button的左边。
在HostListActivity.java中查找quickconnect,在其附近添加button变量及事件:
private TextView quickconnect;
private Button connectbutton;
...
connectbutton = (Button) this.findViewById(R.id.button);
connectbutton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startConsoleActivity();
}
});
quickconnect = (TextView) this.findViewById(R.id.front_quickconnect);
搞定收工!
发表评论