我想顯示來自某個Twitter帳戶的最新推文。在Xamarin.Forms中顯示推文
我使用的WebView:
var browser = new WebView
{
Source = "https://mobile.twitter.com/microsoft"
};
是否可以刪除與「註冊」和「登錄」按鈕的頭?如果是,我該怎麼做?
我想顯示來自某個Twitter帳戶的最新推文。在Xamarin.Forms中顯示推文
我使用的WebView:
var browser = new WebView
{
Source = "https://mobile.twitter.com/microsoft"
};
是否可以刪除與「註冊」和「登錄」按鈕的頭?如果是,我該怎麼做?
您可以嘗試修改頁面的CSS以隱藏該標題;我不知道那是多麼可行。
或者,您可以使用Twitter API或使用Xamarin Social組件獲取您將在自定義用戶界面中顯示的推文提要。
健壯和標準的方法將使用Jason已經提到的Twitter API或Xamarin社會組件。如果你想在WebView中顯示,我建議你檢查Twitter Widgets。我沒有親自嘗試過這一點,但我相信它應該起作用。基本上,您只需登錄您的Twitter帳戶並創建一個小部件。它將使用您在其設置頁面中提供的值爲您動態創建一些HTML。我們可以複製它並將該HTML加載到我們的webview中。
這是一種推薦的方法,用於在網頁中的iframe中顯示供稿。我仍然建議以上述方法中的任何一種方式將feed作爲JSON獲取並顯示出來。
public async void showPage()
{
WebRequest request = HttpWebRequest.Create("https://mobile.twitter.com/microsoft");
WebResponse response = await Task.Factory.FromAsync<WebResponse>(request.BeginGetResponse, request.EndGetResponse, null);
string html = string.Empty;
using (var s = new StreamReader(response.GetResponseStream()))
html = await s.ReadToEndAsync();
var browser = new WebView();
var htmlSource = new HtmlWebViewSource();
htmlSource.Html = html;
browser.Source = htmlSource;
ContentPage cp = new ContentPage();
cp.Content = browser;
MainPage = cp;
}
有了上面這個例子中,這樣的頁面符合您的要求,您可以編輯HTML字符串,然後用web視圖顯示。無論如何,我強烈建議其他方式來做到這一點。特別看看LinqToTwitter,它易於使用和跨平臺(不僅適用於Android和iOS,還適用於Windows Phone 8,Windows 10 UWP與Jason和Sreeraj提及的Twitter組件相對)
如果你只想繼續使用WebView
我建議你遵循@films113的例子。
否則,我會建議Tweetinvi,讓你找回你想要的信息,2號線:
Auth.SetUserCredentials("CONSUMER_KEY", "CONSUMER_SECRET", "ACCESS_TOKEN", "ACCESS_TOKEN_SECRET");
var microsoftTweets = Timeline.GetUserTimeline("microsoft");