xml输入是如传递给java的

前端之家收集整理的这篇文章主要介绍了xml输入是如传递给java的前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
    废话叫前言


开发语言的进步,感触最新的就是,以前写windows的时候使用的是C#后来,学习了一下WPF,内心就是感慨万千

居然用xml来写界面了,不用那些抽象的代码来写,关键是xml的界面还用实时的可观性。xml就和html一样,标记语言。

可以直接在浏览器看到。

之后学习Android后,感觉又回来,真的,语言在进步呀。

在Android中xml时如何连接到java的呢?

是这样的:

value中新建一个atrrs.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="DivActionBar">
<attr name="right_onclick" format="string" />
</declare-styleable>
</resources>

xml中引用:

使用空间名:

xmlns:app=”http://schemas.android.com/apk/res/com.tuxiaobei“

使用

app:right_onclick="function"

java中使用:

		TypedArray array = context
				.obtainStyledAttributes(attrs,R.styleable.DivActionBar);
		final String methodName;</span>
		<span style="font-size:18px;">methodName = array.getString(R.styleable.DivActionBar_right_onclick);</span></strong>
		rightText.setOnClickListener(new OnClickListener() {

			private Method method;

			@Override
			public void onClick(View v) {
				if (!TextUtils.isEmpty(methodName)) {
					if (method == null) {
						try {
							method = getContext().getClass().getMethod(methodName,DivActionBar.class);
						} catch (NoSuchMethodException e) {
							throw new IllegalStateException("Could not find a method "
									+ method + "(View) in the activity "
									+ getContext().getClass() + " for onClick handler"
									+ " on view " + DivActionBar.this.getClass() + e);
						}

						try {
							method.invoke(getContext(),DivActionBar.this);
						} catch (IllegalAccessException e) {
							e.printStackTrace();
						} catch (IllegalArgumentException e) {
							e.printStackTrace();
						} catch (InvocationTargetException e) {
							e.printStackTrace();
						}
					}
				}
			}
		});

猜你在找的XML相关文章