我试图在我的 Angular 6 + Material 项目中随处使用骨架占位符。我被困住了<table>,因为我不知道在数据尚未加载时如何使用占位符(下面的示例图片):
我正在使用什么
<table mat-table [dataSource]="dataSource">
<ng-container matColumnDef="date">
<th mat-header-cell *matHeaderCellDef>Date</th>
<td mat-cell *matCellDef="let v">{{ v.date }}</td>
</ng-container>
<ng-container matColumnDef="description">
<th mat-header-cell *matHeaderCellDef>Description</th>
<td mat-cell *matCellDef="let v">{{ v.description }}</td>
</ng-container>
<ng-container matColumnDef="amount">
<th mat-header-cell *matHeaderCellDef class="text-right">Amount</th>
<td mat-cell *matCellDef="let v" class="text-right">{{ v.amount }}</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
Run Code Online (Sandbox Code Playgroud)
我的骨架占位符可能是
<tr *ngFor="let s of [1, 2, 3]">
<td><span class="sk skw-2 skh-3"></span></td>
<td><span class="sk skw-3 skh-3"></span></td>
<td><span class="sk skw-2 skh-3"></span></td> …Run Code Online (Sandbox Code Playgroud) 我正在制作Stream音频歌曲的应用程序.在自定义媒体播放器中,我必须显示该音频文件的总持续时间.如果音频歌曲是SDCard,我可以知道它的持续时间
MediaPlayer player;
public double duration() {
return player.getDuration();
}
Run Code Online (Sandbox Code Playgroud)
但在我的情况下,音频文件在服务器上,所以我必须流式传输它.
什么是最好的方法?
在 Android 字符串文档中,您可以看到这个示例(重点是,如果字符串周围有双引号,则不需要转义单引号)。
<string name="good_example_2">"This'll also work"</string>
Run Code Online (Sandbox Code Playgroud)
如果我想用 python 生成 strings.xml ,它一切正常(预期结果),直到我使用 toprettyxml ,这会将它变成
<string name="good_example_2">"This'll also work"</string>
Run Code Online (Sandbox Code Playgroud)
我正在像这个例子一样使用 prettify 。
from xml.etree import ElementTree
from xml.dom import minidom
def prettify(elem):
"""Return a pretty-printed XML string for the Element.
"""
rough_string = ElementTree.tostring(elem, 'utf-8')
reparsed = minidom.parseString(rough_string)
return reparsed.toprettyxml(indent=" ")
Run Code Online (Sandbox Code Playgroud)
toprettyxml转义引号。有什么办法可以阻止这种情况发生吗?
在我的应用程序中,我使用类似以下内容的内容
if($val instanceof Carbon)
...
Run Code Online (Sandbox Code Playgroud)
不幸的是,除非我之前在代码中使用Carbon(即使只是Carbon::now();),否则它总是返回 false。为什么?
我的应用程序解析三种不同的XML并将它们保存到数据库中.只要我使用AsyncTask和进度对话框就可以正常工作,因为所有这些都是一个接一个地执行的.我现在开始在三个不同的线程(+ UI线程)中同时解析该数据.现在这四个线程争夺数据库,有时崩溃,总是在使用UI线程时.我收到以下错误:
ERROR/AndroidRuntime(651): Caused by: java.lang.IllegalStateException: database /data/data/edu.activity/databases/vreme already closed
Run Code Online (Sandbox Code Playgroud)
然后我又来了
INFO/System.out(667): XML Pasing5 Excpetion = java.lang.IllegalStateException: database not open
Run Code Online (Sandbox Code Playgroud)
或者这个
01-30 00:56:05.232: ERROR/AndroidRuntime(731): FATAL EXCEPTION: Thread-11
01-30 00:56:05.232: ERROR/AndroidRuntime(731): java.lang.IllegalStateException: database not open
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1493)
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1410)
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at edu.database.DBAdapter.insertSamodejne(DBAdapter.java:229)
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at edu.util.ApplicationInt.addDBSamodejne(ApplicationInt.java:49)
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at edu.xml.XMLtoDB.insertSamodejne(XMLtoDB.java:58)
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at edu.activity.SplashScreen$4.run(SplashScreen.java:97)
01-30 00:56:05.232: ERROR/AndroidRuntime(731): at java.lang.Thread.run(Thread.java:1096)
Run Code Online (Sandbox Code Playgroud)
我每次插入数据时都会插入大约80个项目,使用此方法和类似方法:
public void addDBSplosna(SplosnaRazred s) {
db.open();
db.insertSplosna(s);
db.close();
}
Run Code Online (Sandbox Code Playgroud)
将对DBAdapter: …
android ×3
angular ×1
escaping ×1
html-table ×1
instanceof ×1
laravel ×1
media-player ×1
php ×1
php-carbon ×1
python ×1
sqlite ×1
streaming ×1
xml ×1