我有一个TextView,它位于屏幕的左侧,设置为gravity ="right",并设置为SingleLine ="true".
如果有可能这个视图中的文本太长,我希望它只是从视图的左侧消失.我认为下面的配置会这样做,但实际发生的是长字符串完全消失,大概是在某个地方的视图之外.
如何创建一个包含单行文本的简单文本视图,并在发生意外情况时保持其布局?......甚至是可以预测的事情.
<TextView
android:id="@+id/tempF"
android:text="@string/tempF"
android:layout_width="146dp"
android:layout_height="wrap_content"
android:textColor="#cccccc"
android:textStyle="bold"
android:textSize="92dp"
android:fontFamily="serif"
android:gravity="right"
android:layout_marginTop="60dp"
android:layout_gravity="top|left"
android:singleLine="true"
/>
Run Code Online (Sandbox Code Playgroud) NSDateFormatter是否有意外返回nil的倾向?我不认为这样做.我希望我忽略了一些微不足道的细节,无论出于什么原因我都看不到.
我有一些描述太阳和月亮的数据.它列在下面.我还有一个循环,一旦从plist加载到字典中,就会迭代这些数据.最后,我有一个类使用NSDateFormatter作为单例来处理日期.这个过程运作良好,这些方法已经相互作用并产生一两个月的正确日期,但今天它已经崩溃了.通过这个简单的过程创建和传递的所有字符串都被正确转换为日期,除了最后一个为nil.这是发生的事情:
这是属性列表中的数据.
<key>2014-3-7</key>
<dict>
<key>moonrise</key>
<string>10:51 am</string>
<key>moonset</key>
<string>0:03 am</string>
<key>phase</key>
<string>Waxing Crescent</string>
<key>sunrise</key>
<string>6:39 am</string>
<key>sunset</key>
<string>6:21 pm</string>
</dict>
<key>2014-3-8</key>
<dict>
<key>moonrise</key>
<string>11:39 am</string>
<key>moonset</key>
<string>0:56 am</string>
<key>phase</key>
<string>First Quarter</string>
<key>sunrise</key>
<string>6:38 am</string>
<key>sunset</key>
<string>6:21 pm</string>
</dict>
<key>2014-3-9</key>
<dict>
<key>moonrise</key>
<string>1:28 pm</string>
<key>moonset</key>
<string>2:45 am</string>
<key>phase</key>
<string></string>
<key>sunrise</key>
<string>7:37 am</string>
<key>sunset</key>
<string>7:22 pm</string>
</dict>
Run Code Online (Sandbox Code Playgroud)
这个数据是通过一个循环来处理的,这个循环是从昨天开始到明天结束的日期字符串创建的,所以在这种情况下,它从7日开始或3月开始,到9日结束,我们正在处理给定日期的每个plist项目中的值作为一个名为iDay的字典.
NSString *eventString;
NSDate *moonrise;
NSDate *moonset;
NSString *dateFormatString = @"yyyy-MM-dd h:mm a";
if ([iDay objectForKey:@"moonrise"] != nil) {
eventString = [NSString stringWithFormat:@"%@ %@", …Run Code Online (Sandbox Code Playgroud)