2010-03-18 16 views
8

क्या किसी छवि के चारों ओर टेक्स्टव्यू लपेटने के लिए वैसे भी है? यह ठेठ बात यह है कि लोगों की तरह इस http://www.echoecho.com/htmlimages08.htmएंड्रॉइड - पाठ के लिए UI एक छवि को लपेटें

धन्यवाद सीएसएस में करते हैं,
टी

+0

अगर आप चाहते हैं पर अपने ईमेल को खोजें संस्करण 2.2 से शुरू होने वाले केवल बाएं फ़्लोटिंग और एंड्रॉइड फोन का उपयोग करने के लिए, आप उस समाधान का उपयोग कर सकते हैं जिसे मैंने यहां दूसरे प्रश्न के उत्तर में वर्णित किया है: http://stackoverflow.com/a/8463221/427225 – vorrtex

उत्तर

4

क्यों नहीं सिर्फ एक WebView का उपयोग है? इस तरह के लेआउट को अनुकूलित करने के लिए भविष्य में आपको अधिक स्वतंत्रता होगी।

यदि WebView आपके उपयोग के मामले के लिए बहुत भारी वजन है, तो आपको शायद टेक्स्ट और छवि को मैन्युअल रूप से प्रस्तुत करने की आवश्यकता होगी। आपको this android-developers thread में कुछ प्रासंगिक जानकारी मिल सकती है।

0

इसे पूरा करने का एक और तरीका टेक्स्ट और छवियों को प्रदर्शित करने वाली छवि बनाना है। जाहिर है भारी वजन और एक कामकाज।

आप स्थानीय सामग्री को लोड करने के लिए वेबव्यू और वर्कअराउंड का उपयोग करके ऐसा कर सकते हैं। 1.0 एसडीके के रूप में वेब दृश्य नहीं कर सकते काम इन लेखों में वर्णित arounds के बिना स्थानीय सामग्री लोड:

http://www.techjini.com/blog/2009/01/10/android-tip-1-contentprovider-accessing-local-file-system-from-webview-showing-image-in-webview-using-content/

और

http://blog.tourizo.com/2009/02/how-to-display-local-file-in-android.html

रोमन के लिंक एक धागा है कि कहते हैं आप कर सकते हैं 'करने के लिए है इसे टेक्स्ट व्यू के साथ न करें, इसलिए इस बिंदु पर यह कोई विकल्प नहीं है।

15

मैं इस के लिए एक विजेट लिखा है: http://code.google.com/p/android-flowtextview/

enter image description here

इस विजेट का विस्तार (और इसलिए तरह बर्ताव करता है) एक RelativeLayout ताकि आप बच्चे विचारों जोड़ सकते हैं। कक्षा एक setText() विधि का खुलासा करती है जो आपको दृश्य का पाठ (सादा या स्पैन करने योग्य) सेट करने की अनुमति देती है और फिर आप टेक्स्ट को प्रस्तुत करने के लिए अमान्य() को कॉल करते हैं। टेक्स्ट बच्चे के विचारों से छोड़ी गई किसी भी जगह को भर देगा।

उदाहरण उपयोग:

<com.pagesuite.flowtext.FlowTextView 
      android:id="@+id/tv" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" > 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentTop="true" 
       android:padding="10dip" 
       android:src="@drawable/android" /> 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentRight="true" 
       android:layout_marginTop="400dip" 
       android:padding="10dip" 
       android:src="@drawable/android2" /> 
     </com.pagesuite.flowtext.FlowTextView> 
फिर अपने कोड में

:

tv = (FlowTextView) findViewById(R.id.tv);    
Spanned spannable = Html.fromHtml("<html ... </html>"); 
tv.setText(spannable); // using html 
tv.setText("my string"); // using plain text  
tv.invalidate(); // call this to render the text 

हमेशा यदि आप इस का उपयोग कर कोई समस्या है, सहायता करने में खुशी, मेरी प्रोफाइल

+0

यह कितना तेज़ है? क्या यह वेबव्यू का उपयोग अंदर करता है? –

+0

कोई मूल नहीं, बहुत तेज़ –

+0

मैं इस पुस्तकालय में स्क्रॉलव्यू नहीं चाहता हूं बल्कि मैं टेक्स्ट को लंबित करना चाहता हूं। कोई भी समाधान ? –

संबंधित मुद्दे