关于沉默效果java代码的信息

Android如何纯java代码实现字体阴影效果

Android实现纯java代码字体阴影效果,主要是通过activity的draw方法,进行重新绘制,如下代码:

站在用户的角度思考问题,与客户深入沟通,找到兴山网站设计与兴山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、网站制作、企业官网、英文网站、手机端网站、网站推广、国际域名空间、虚拟空间、企业邮箱。业务覆盖兴山地区。

package canvas.test;

import android.app.Activity;

import android.os.Bundle;

import android.content.Context;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.graphics.Canvas;

import android.graphics.Color;

import android.graphics.Paint;

import android.graphics.PorterDuff;

import android.graphics.PorterDuff.Mode;

import android.graphics.PorterDuffXfermode;

import android.graphics.Rect;

import android.graphics.RectF;

import android.graphics.drawable.Drawable;

import android.view.View;

public class ShaderEffect extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(new ImageEffect(this));

}

class ImageEffect extends View{

Paint paint; 

public ImageEffect (Context context){

super(context);

paint = new Paint();//初始化画笔,为后面阴影效果使用。

paint.setAntiAlias(true);//去除锯齿。

paint.setShadowLayer(5f, 5.0f, 5.0f, Color.BLACK);//设置阴影层,这是关键。

paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));

}

@Override

public void onDraw(Canvas canvas){

super.onDraw(canvas);

int posX = 20;

int posY = 50;

int PicWidth,PicHegiht; 

Drawable drawable = getResources().getDrawable(R.drawable.button);

Drawable dbe = getResources().getDrawable(R.drawable.button).mutate();//如果不调用mutate方法,则原图也会被改变,因为调用的资源是同一个,所有对象是共享状态的。

Drawable drawTest = getResources().getDrawable(R.drawable.button);

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.button);

PicWidth = drawable.getIntrinsicWidth();

PicHegiht = drawable.getIntrinsicHeight();

drawTest.setBounds(posX, (2 * posY) + PicHegiht, posX + PicWidth, (2 * posY) + 2 * PicHegiht );

drawable.setBounds(posX,posY,posX+PicWidth,posY+PicHegiht);

dbe.setBounds(0, 0, PicWidth, PicHegiht);

canvas.drawColor(Color.WHITE);//设置画布颜色

canvas.save(Canvas.MATRIX_SAVE_FLAG);

dbe.setColorFilter(0x7f000000,PorterDuff.Mode.SRC_IN);

canvas.translate(posX + (int)(0.9 * PicWidth/2), posY + PicHegiht/2);//图像平移为了刚好在原图后形成影子效果。

canvas.skew(-0.9F, 0.0F);//图像倾斜效果。

canvas.scale(1.0f, 0.5f);//图像(其实是画布)缩放,Y方向缩小为1/2。

dbe.draw(canvas);//此处为画原图像影子效果图,比原图先画,则会在下层。

drawable.clearColorFilter();

canvas.restore();

canvas.save(Canvas.MATRIX_SAVE_FLAG);

drawable.draw(canvas);//此处为画原图像,由于canvas有层次效果,因此会盖在影子之上。

canvas.restore();

//默认无效果原图

canvas.save(Canvas.MATRIX_SAVE_FLAG);

drawTest.draw(canvas);

canvas.restore();

//图片阴影效果

canvas.save(Canvas.MATRIX_SAVE_FLAG);

//Rect rect = new Rect(2*posX + PicWidth, 2*posY + PicHegiht, 2*posX + 2*PicWidth, 2*posY + 2*PicHegiht);//此为理论上的阴影图坐标

Rect rect = new Rect(2*posX + PicWidth + 3, 2*posY + PicHegiht + 3, 2*posX + 2*PicWidth - 2, 2*posY + 2*PicHegiht - 2);

//由于图片的实际尺寸比显示出来的图像要大一些,因此需要适当更改下大小,以达到较好的效果

RectF rectF = new RectF(rect);

canvas.drawRoundRect(rectF, 10f, 10f, paint);//在原有矩形基础上,画成圆角矩形,同时带有阴影层。

canvas.drawBitmap(bmp, 2*posX + PicWidth, 2*posY + PicHegiht, null);//画上原图。

canvas.restore();

}

}

}

怎么使用java代码实现模拟水位涨沉动态效果

这是js...

dom的话设置div的top和bottom属性,用setTimeout()或者setInterval()方法

jquery的话就简单了,直接用animate()方法,也是设置top和bottom属性,slideUp()和slideDown()方法也行。

求JAVA编程代码…………

下面是WINDOW界面的代码,用JAVA SWING写的。

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class PlusWhile {

//主面板

private JFrame mainTop = null;

private JPanel inPanel = null; //输入面板

private JPanel outPanel = null;//输出面板

private JButton count = null; //按钮

private JTextField inText = null; // 输入文本框

private JTextField result = null;//结果文本框

private JLabel resultOut = null;//输出提示

private JLabel remindIn = null;//输入提示

//初始化方法

private void init() {

//组件实例化

mainTop = new JFrame("阶乘计算器");

inPanel = new JPanel();

outPanel = new JPanel();

count = new JButton("计算");

inText = new JTextField(10);

result = new JTextField(10);

resultOut = new JLabel("计算的结果:");

remindIn = new JLabel("请输入要计算的正整数:");

//添加输入组件

inPanel.add(remindIn);

inPanel.add(inText);

inPanel.add(count);

//添加输出组件

outPanel.add(resultOut);

outPanel.add(result);

result.setEnabled(false);

//设置布局样式

mainTop.setLayout(new BorderLayout());

//主面板添加组件

mainTop.add(inPanel, BorderLayout.NORTH);

mainTop.add(outPanel, BorderLayout.SOUTH);

//设置监听

count.addActionListener(new ButtonListener());

//设置屏显位置

mainTop.setLocation(350 , 300);

mainTop.pack();

mainTop.setVisible(true);

mainTop.setAlwaysOnTop(true);

//设置关闭事件

mainTop.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

//监听类

private class ButtonListener implements ActionListener {

public void actionPerformed(ActionEvent event) {

int inputNum = 0;

String input = inText.getText();

//若输入为非数字,提示错误

try {

inputNum = Integer.parseInt(input);

}catch(Exception e) {

inputNum = -1;

}

//输入数值小于0,提示错误

if(inputNum 0) {

inText.setText("请输入正确的数值!");

result.setText("");

}

else if(inputNum == 0) {//输入值为0处理

result.setText("1");

}

else {//输入值为正整数,计算阶乘

int temp = inputNum;

while(inputNum 1) {

temp *= --inputNum;

}

result.setText(temp + "");

}

}

}

//入口方法

public static void main(String[] args) {

new PlusWhile().init();

}

}

有什么不明白的继续补充,呵呵。 加点儿分不。

Java中有什么代码是可以清屏啊??

要java在windows下的cmd下实现清屏,唯一的方案,就是通过JNI调用一个库文件(.dll),这个dll中包含一个实现清屏功能(system(“cls”))的导出函数。

在java程序中加入代码调用这个库,即可实现当前屏幕的清屏。

实现步骤:

1.写一个dll.h

#ifndef _Included_Cls

#define _Included_Cls

#ifdef __cplusplus

extern "C"

{

#endif

JNIEXPORT void JNICALL Java_Cls_clear

(JNIEnv *, jobject);

#ifdef __cplusplus

}

#endif

#endif

2.再写一个dllmain.c

#include "jni.h"

#include "dll.h"

#include "stdlib.h"

JNIEXPORT void JNICALL Java_Cls_clear(JNIEnv *env, jobject obj)

{

system("cls");

}

3.用vc++建立一个dll工程(我的工程名为clsTest)

导入dllmain.c 和dll.h以及jdk下include目录下的jni.h和include/win32下的jni_md.h 共四个文件

然后build 这个dll工程,将生成的clsTest.dll放入到你的java.library.path中的其中一个目录下

查看java.libray.path用代码System.out.print(System.setProperty("java.library.path","."));

我是根据我的配置将clsTest.dll放到C:/Program Files/Java/jdk1.6.0/jre/bin下

4.测试

新建一个测试类Test.java

public class Test{

public native void clear();//左方的native是通知Java这个函数会使用到外部函数

static {

System.loadLibrary("clsTest"); //左方的代码代表我要载入clsTest.dll的动态链接

}

public static void main(String[] args) {

final Test a=new Test();

Runnable k=new Runnable(){

public void run(){

for(int i=0;i20;i++){

System.out.println(i);

try {

Thread.sleep(1000);

a.clear();

} catch (Exception e) {

}

}

}

};

k.run();//执行线程

}

}

5.在cmd下 javac Test.java

一段JAVA小代码

改为,你的boolean数组没有初始化,bar[0]取到的为null,if(null){} 编译通不过去

1. String foo = “blue”;

2. Boolean[] bar = {true};

3. if (bar[0]) {

4. foo = “green”;

5. }

分享名称:关于沉默效果java代码的信息
标题URL:https://www.cdcxhl.com/article22/hghsjc.html

成都网站建设公司_创新互联,为您提供网站内链品牌网站建设标签优化动态网站网站排名网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站建设