ZoomControls是控制组件的大小,是LinearLayout的子类。有放大和缩小两个方法 setOnZoomInClickListener和setOnZoomOutClickListener。
主程序如下
package com.jackie.zoomcontrolsproject;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
import android.widget.ZoomControls;
public class MyDemo extends Activity {
private ZoomControls zoomControls = null;
private TextView show = null;
private int size = 10;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.main);
this.show = (TextView) super.findViewById(R.id.show);
this.zoomControls = (ZoomControls) super
.findViewById(R.id.zoomControls);
this.zoomControls
.setOnZoomInClickListener(new OnZoomInClickListenerImpl());
this.zoomControls
.setOnZoomOutClickListener(new OnZoomOutClickListenerImpl());
}
private class OnZoomInClickListenerImpl implements OnClickListener {
@Override
public void onClick(View arg0) {
MyDemo.this.size = size + 2;
MyDemo.this.show.setTextSize(size);
}
}
private class OnZoomOutClickListenerImpl implements OnClickListener {
@Override
public void onClick(View arg0) {
MyDemo.this.size = size - 2;
MyDemo.this.show.setTextSize(size);
}
}
}
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
import android.widget.ZoomControls;
public class MyDemo extends Activity {
private ZoomControls zoomControls = null;
private TextView show = null;
private int size = 10;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.main);
this.show = (TextView) super.findViewById(R.id.show);
this.zoomControls = (ZoomControls) super
.findViewById(R.id.zoomControls);
this.zoomControls
.setOnZoomInClickListener(new OnZoomInClickListenerImpl());
this.zoomControls
.setOnZoomOutClickListener(new OnZoomOutClickListenerImpl());
}
private class OnZoomInClickListenerImpl implements OnClickListener {
@Override
public void onClick(View arg0) {
MyDemo.this.size = size + 2;
MyDemo.this.show.setTextSize(size);
}
}
private class OnZoomOutClickListenerImpl implements OnClickListener {
@Override
public void onClick(View arg0) {
MyDemo.this.size = size - 2;
MyDemo.this.show.setTextSize(size);
}
}
}
布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MyDemo" >
<TextView
android:id="@+id/show"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="深圳南山(Shenzhen)"
android:textSize="10px" />
<ZoomControls
android:id="@+id/zoomControls"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom"/>
</LinearLayout>
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MyDemo" >
<TextView
android:id="@+id/show"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="深圳南山(Shenzhen)"
android:textSize="10px" />
<ZoomControls
android:id="@+id/zoomControls"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom"/>
</LinearLayout>