2014-05-06 34 views
0

我從xe12更新了我的谷歌眼鏡GDK到xe16。直到更新,我的應用程序運行良好。現在,當我運行應用程序的玻璃拋出:的NoSuchMethodError - 更新後玻璃GDK

java.lang.NoSuchMethodError: com.google.android.glass.app.Card.setText 

我按照張貼在下面的討論中的操作的指令:

[鏈接1](NoSuchMethodError for Card.setText() in XE16

[鏈接2](Google Glass updated to KitKat, but new methods aren't showing up in Eclipse?

但是我依然無法運行我的代碼。

我已經確定一切是最新的Eclipse中,我的項目的建設目標是玻璃開發套件預覽(奇巧)和我已經重新啓動Eclipse的。

有什麼建議嗎?

這裏是創建卡代碼:

import java.util.ArrayList; 

import android.content.Context; 
import android.os.Bundle; 
import android.support.v7.app.ActionBarActivity; 

import com.Y2014S.MirrorEdge.common_functions.CardScrollViewManager; 
import com.google.android.glass.app.Card; 
import com.google.android.glass.widget.CardScrollView; 
public class MainActivity extends ActionBarActivity 
{ 
private ArrayList<Card> mCards; 
private CardScrollView mCardScrollView; 
@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    mCards = new ArrayList<Card>(10); 
    mCards = createCard(mCards, this, "hello"); 
    CardScrollViewManager ScrollManager = new CardScrollViewManager(mCards); 
    mCardScrollView = ScrollManager.createCardScrollView(mCardScrollView, 
      getApplicationContext()); 
    setContentView(mCardScrollView); 
} 

public static ArrayList<Card> createCard(ArrayList<Card> mCards, 
     final Context appContext, final String headerText) 
{ 
    final Card newCard = new Card(appContext); 
    CharSequence cs = headerText; 
    newCard.setText(cs); 
    mCards.add(newCard); 
    return mCards; 
}// end of createCard method 

} 

注:我加入卡在方法本身的ArrayList和返回的ArrayList,以供以後使用的主要活動。

謝謝!

+0

將使意義,包括您的代碼或內容片段在更好地幫助這裏 – aldridmc

回答

0

現在,您需要使用card.setText(CharSequence xx)。順便提一下,String實現了CharSequence。 您可能想要查看發行說明here

你可以嘗試從活動繼承..以下,顯示在專用源所做的一切(沒有錯誤)。(但CardScrollViewManager東西:

package com.example.stackglasstest; 

import java.util.ArrayList; 

import com.google.android.glass.app.Card; 
import com.google.android.glass.widget.CardScrollView; 

import android.app.Activity; 
import android.app.ActionBar; 
import android.app.Fragment; 
import android.content.Context; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.view.ViewGroup; 
import android.os.Build; 



public class MainActivity extends Activity 
{ 
private ArrayList<Card> mCards; 
private CardScrollView mCardScrollView; 
@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    Context x = this; 
    mCards = new ArrayList<Card>(10); 
    mCards = createCard(mCards, this, "hello"); 
    CardScrollViewManager ScrollManager = new CardScrollViewManager(mCards); 
    mCardScrollView = ScrollManager.createCardScrollView(mCardScrollView, 
      getApplicationContext()); 
    setContentView(mCardScrollView); 
} 

public static ArrayList<Card> createCard(ArrayList<Card> mCards, 
     final Context appContext, final String headerText) 
{ 
    final Card newCard = new Card(appContext); 
    CharSequence cs = headerText; 
    newCard.setText(cs); 
    mCards.add(newCard); 
    return mCards; 
}// end of createCard method 

} 

這裏是AndroidManifest ...

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

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

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.example.stackglasstest.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> 

</manifest> 
+0

我添加的代碼如你所說,仍然得到同樣的錯誤,我錯過了一些東西明顯 – user3608847

+0

提出了一個新項目,並跑了你的代碼,有: 「無法fi在com.example.test.MainActivity.createCard引用」 – user3608847

+0

我現在用的是玻璃開發預覽版(4.4.2)爲目標構建,並有玻璃開發套件ND方法com.google.android.glass.app.Card.setText方法在構建路徑中預覽[Android 4.4.2] – user3608847