我需要一个文本视图显示两个文本 - 其中一个左对齐,另一个 - 右对齐。在阅读了 spans 之后,我编写了以下代码:
private Spannable generateText(PageModel page) {
final DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(context);
final String pageNumber = page.getNumber() + " ";
final String string = pageNumber + dateFormat.format(new Date(page.getLastModified())) ;
Spannable spannable = Spannable.Factory.getInstance().newSpannable(string);
spannable.setSpan(new AlignmentSpan.Standard(Alignment.ALIGN_NORMAL), 0, pageNumber.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
spannable.setSpan(new AlignmentSpan.Standard(Alignment.ALIGN_OPPOSITE), pageNumber.length() + 1, string.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return spannable;
}
Spannable spannable = generateText(page);
textView.setText(spannable);
Run Code Online (Sandbox Code Playgroud)
结果是两者都左(正常)对齐。实际上,根本没有对齐发生,即使我使用居中对齐。字符串部分的边界没有越过,为什么不起作用?你知道为什么这行不通吗?
public class Main {
private final int value = 3;
public static Runnable buildRunner() {
return new Runnable() {
@Override
public void run() {
System.out.println(Main.this.value);
}
};
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用Eclipse Kepler和JRE 7.
在buildRunner方法中 - 为什么我能看到thisMain的?静态方法中Main的'this'是什么?为什么编译?
如果value是最终的,我只能这样做.我不能调用Main和stuff的实例方法,但是值不是十分贬值的static!此外,如果我想在使用buildRunner方法,外面run的方法new Runnable,编译器将停止从我做那.
我想做以下事情:
我想制作一个非常简单的图库应用程序.所以我想为图像选择路径并将其设置为资源.我在String.xml中设置它.
所以我有另一个类,需要选择的路径来加载它的所有图像.
class ImageHolder
{
public ImageHolder()
{
this(R.string.image_dir);
//problem is here - R.string.image_dir returns a unique int, while what I really need is the string. How can I get it...
}
public ImageHolder(String path)
{
.........standart procedure.....
}
}
Run Code Online (Sandbox Code Playgroud) 我想创建一个MapView,但扩展MapActivity会抛出一个classNotFoundException:
/AndroidRuntime( 374): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585)
E/AndroidRuntime( 374): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
E/AndroidRuntime( 374): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
E/AndroidRuntime( 374): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
E/AndroidRuntime( 374): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 374): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 374): at android.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime( 374): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 374): at java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime( 374): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
E/AndroidRuntime( 374): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
E/AndroidRuntime( 374): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 374): Caused by: java.lang.ClassNotFoundException: com.androidcourse.phonemapper.view.MapShowActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/com.androidcourse.phonemapper-2.apk]
E/AndroidRuntime( 374): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
E/AndroidRuntime( 374): at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
E/AndroidRuntime( 374): at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
E/AndroidRuntime( 374): at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
E/AndroidRuntime( 374): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577) …Run Code Online (Sandbox Code Playgroud) 我的问题是,当你在webView中时,你已经浏览了几页.
你想回去.您最后一页是否已被缓存,因此您不需要互联网连接即可返回?
我对简单的片段切换越来越感到沮丧,由于某种原因它不播放任何动画。
片段切换本身有效,我可以看到我的新片段。然而,没有过渡。
谁能帮我理解为什么?这是我的片段交易代码:
public class FullscreenActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fullscreen);
}
@Override
protected void onResume() {
super.onResume();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.setCustomAnimations(R.anim.slide_out_right, R.anim.slide_out_right);
transaction.replace(R.id.root, new InitialFragment(),"DDDDD");
transaction.commit();
}
}, 3000L);
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,在 Slide_out_right.xml 中,该名称具有误导性 - 我已将其设置为更基本的内容,以确保我没有搞砸动画参数:
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:valueFrom="0"
android:valueTo="1"
android:propertyName="alpha"
android:duration="@android:integer/config_mediumAnimTime" />
Run Code Online (Sandbox Code Playgroud)
不管怎样,我认为没有任何效果。我尝试使用 setTranstition(FragmentTransiniot.TRANSIT_ ALLMOST_ALL_OF_THE_FLAGS ),似乎没有任何效果。
我没有通过支持库使用片段,我正在使用 Android 4.1.2 的已 root 的 Galaxy S 上进行测试。
android ×5
animation ×1
caching ×1
eclipse ×1
fragment ×1
google-maps ×1
html ×1
java ×1
layout ×1
mapactivity ×1
spannable ×1
transition ×1
webview ×1