2014年12月11日 星期四

[Android] permission denied

在AndroidManifest.xml中加入紅色那行,加入寫入權限,就算只有讀取也要加入。



<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.test11"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.test11.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
</manifest>

2014年2月12日 星期三

[Matlab] Listbox 消失 single-selection listbox control requires that Value be an integer within String range




發生問題:

刪除listbox的最後一行後,listbox會消失,並在Command Windows 上顯示" Warning: single-selection listbox control requires that Value be an integer
within String range
Control will not be rendered until all of its parameter values are valid "

如下圖所示














      

                                  
 原因:

Listbox 中兩個重要的屬性 String 與 Value ,在刪減資料後,我們會重新set資料到listbox中的string,不過通常都忘記value也跟著設定,預設是不會改的,但刪除的是最後一行資料列時,指標還是指向最後一行,但資料早已不在,所以就無法顯示資料,

舉例來說

以下是我的listbox的資料與index

string={1,2,3,4,5}
value=5;


1
2
3
4
5<---

但我刪除第五筆資料時

1
2
3
4
   <-----????


刪除後指標還是標記第五個,但是資料消失了,所以會出錯。




解決方法:

if val==1
set(h_lst2,'Strin',str,'value',1);  
else
set(h_lst2,'Strin',str,'value',val-1);
end

在刪除資料後set時,把val設定成val-1,用例子表示的話,就是從原本的5只到4,這樣還是在目前listbox中的最後一個值,所以可以正常顯示。








 正常啦,網路上寫得太複雜,有的說就選擇此新矩陣大小的長度,非常複雜~